저는 나사로 0.9.30.2를 사용하고 있습니다. 표준 TStringGrid가있는 표준 TForm이 있습니다. 문자열 격자에는 디자인 타임에 행이나 열이 없습니다. Object Inspector에서 다음 값이 설정됩니다.런타임에 TStringGrid에 동적으로 열을 추가 할 때 고정 열을 피하는 방법은 무엇입니까?
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.
안녕하세요 @TLama .... 나는 게시 한 후 조금 더 놀았으며 귀하의 의견에 명시된 모든 것을 확인했습니다. 런타임시 고정 열이 기본적으로 추가됩니다. 디자인 타임에 임의의 열을 그리드에 추가하면 고정 열이 추가되지 않습니다. 내가 한 일은 동적으로 모든 열을 추가 한 다음 끝 설정 'FixedCol : = 0' – user1174918