0

DelphiXE2Firemonkeyでファイルからstringgridを読み込もうとしています。Delphiで実行すると、次のようになります。

procedure TForm1.File2StringGrid(Sender: TObject);
var
F: TextFile;
 Tmp, x, y: Integer;
TmpStr: string;
begin
AssignFile(F, (ExtractFilePath(ParamStr(0))+'stringgrid1.sgf'));
Reset(F);
Readln(F, Tmp);
StringGrid1.ColumnCount:=Tmp;

Readln(F, Tmp);
StringGrid1.RowCount:=Tmp;
for x:=0 to StringGrid1.ColumnCount-1 do
for y:=0 to StringGrid1.RowCount-1 do
begin
  Readln(F, TmpStr);
  StringGrid1.Cells[x,y]:=TmpStr;
 end;
CloseFile(F);
end;

Firemonkeyではエラーが発生します:[DCCエラー] Unit1.pas(179):E2129次の行の読み取り専用プロパティに割り当てることができません:StringGrid1.ColumnCount:= Tmp;

それを修正する方法はありますか?

4

1 に答える 1

3

ドキュメントから:

property ColumnCount: Integer read GetColumnCount;
...
Set ColumnCount to add or delete columns at the right side of the grid.

したがって、ドキュメントはソースと一致しません。

代わりに次のことを試してください。

while StringGrid1.ColumnCount < Tmp do
  StringGrid1.AddObject(TStringColumn.Create(StringGrid1));
于 2012-12-31T17:04:52.987 に答える