2017-03-08 9 views
0

私は多くのソリューションをオンラインで見つけましたが、StringGrid1.ColumnCount属性は読み取り専用であるため動作しません。私はDelphi 10 Seattleを使用しています。実行時に文字列グリッド列を追加します

私はStringGrid1を持っており、実行時に列を追加する必要があります。具体的には、TListのサイズに応じて列を追加する必要があります。特に:

var a: TList<double>; 
begin 

//fill the TList... 

for i := 0 to a.Count - 1 do 
    begin 
    StringGrid1.AddColumn(); //how can I do this? 
    end; 

end; 

私はラザロに、これは非常に簡単に見つける(それは当然のFPCを持っている)が、デルファイの上に、私は本当に何をするか分かりません。私はFiremonkeyに取り組んでいます。

+0

"*' StringGrid1.ColCount'プロパティは読み取り専用です* " - これはFireMonkeyでのみ真です。 'ColCount'プロパティはVCLで読み書き可能です。また、FMXでは、 'ColCount'プロパティがなく、実際には' ColumnCount'という名前になっています。次回は、使用しているフレームワークを明記してください。 –

+0

あなたが話していることを知ることが難しい –

+0

私は質問をよく説明しませんでしたが、TStringGridに列(TStringColums)を追加するだけです。 –

答えて

7

TStringColumnように、所望のTColumn由来のクラスのオブジェクトのインスタンスを追加するために、グリッドのAddObject()又はInsertObject()方法を使用。列オブジェクトはグリッドのColumns配列に追加されます。 ColumnCountプロパティは配列の列数を返します。そのため、読み取り専用です。

+0

StringGrid1.AddObject(TStringColumn.Create(StringGrid1)); –

+0

このコードは正常に動作します、ありがとうございます。 –

関連する問題