Lazarus 0.9.30.2 を使用しています。標準の TStringGrid を含む標準の TForm があります。文字列グリッドには、設計時に列も行もありません。Object Inspector では、次の値が設定されています。
ColCount = 0
Columns = 0
FixedCols = 0
FixedRows = 0
RowCount = 0
実行時にいくつかの TGridColumns を追加したいのですが、それはできましたが、常に固定列を取得してしまい、これは望ましくありません。そのために、以下のサンプルに非常によく似たコードを作成しました。コンパイルして実行すると、次のようになります。
実行時に固定列を取り除き、残りの列だけを残すにはどうすればよいですか?
unit test;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, Grids;
type
TForm1 = class(TForm)
SgGrid: TStringGrid;
procedure FormCreate(Sender: TObject);
end;
var
Form1: TForm1;
implementation
{$R *.lfm}
procedure TForm1.FormCreate(Sender: TObject);
var
GridColumn : TGridColumn;
anIndex : integer;
begin
for anIndex := 0 to 5 do
begin
GridColumn := SgGrid.Columns.Add;
GridColumn.Width := 50;
GridColumn.Title.Caption := 'Col ' + inttostr(anIndex);
end; {for}
end;
end.