StringGridの使い方
StringGridは文字列を表として表示したり管理したりする時使用します。
行と列を数を変更するには
ColCountプロパティとRowCountプロパティを変更します。
セルの高さと幅を変更するには
デフォルトではセルの高さが24pixelあるので変更したくなります。これは、DefaultRowHeightプロパティで行います。
幅の変更は、DefaultColWidthプロパティで行います。
セルの幅や高さをユーザが自由に変更できるようにするには
StringGridはデフォルトではセルの幅や高さをユーザが変更できないので、Excelのように自由に変更できるようにしたほうが便利です。これはオブジェクトインスペクタのOptionプロパティをダブルクリックしてサブプロパティを表示させ、goRowSizingとgoColSizingをTrueにします。
現在選択されているセルを得るには
Rowプロパティは現在選択されている行を示します。Colプロパティは現在選択されている列を示します。
セルに文字列を代入するには
Cells[i, j]に文字列を代入します。左上隅が座標(0, 0)です。
例
Form2.ShowModal;
i := Form2.Row;
j := Form2.Column;
v := Form2.Value;
StringGrid1.Cells[i, j] := v;
1列(または1行)のセルの内容を配列として得るには
Cols(Rows)プロパティを使用すると1列(1行)のセルの内容を配列のように扱うことができます。ColsはTSrings型なのでつぎのようにしてセルの内容をアクセスします。
value := Cols[0].Strings[0];
セルに文字列をキー入力するには
OnKeyPressedイベントハンドラを定義して、カレントセルに文字を追加していきます。
例
procedure TForm1.StringGrid1KeyPress(Sender: TObject; var Key: Char);
begin
with StringGrid1 do
Cells[Col, Row] := Cells[Col, Row] + Key;
end;