2

我需要保存我的网格设置,如列位置和大小、表单位置和大小,以及其他设置,这样当用户重新打开表单时,他们会看到相同的布局。

现在我将此设置保存在一个字符串中。像这样的东西

“STOCK_FORM:GRID1:COL1->20;STOCK_FORM:GRID1:COL2->50;”

但这不容易阅读和设置。有没有更好的办法?我应该使用xml吗?xml性能如何?

我很想听听其他人通常如何做到这一点。

提前致谢。很抱歉我的英语不好。

问候, 雷纳尔迪

4

2 回答 2

0

您可以将设置写入 Ini 文件。

是一个例子

于 2013-03-17T10:00:36.183 回答
0
Try This :
   public
     Public declarations }

    constructor Create(AOwner: TComponent); override; // (1)
    procedure BeforeDestruction; override;  // (2) }



   procedure TForm1.BeforeDestruction;
begin
  inherited;
  with TFileStream.Create(PreservePath + ClassName + '.sav',    fmCreate) do
  try
    WriteComponent(Self);
  finally
    Free;
  end; 



   constructor TForm1.Create(AOwner: TComponent);
begin  
  PreservePath := ExtractFilePath(Application.ExeName) + 
    'Preserve';
  if not DirectoryExists(PreservePath) then
    CreateDir(PreservePath);
  PreservePath := PreservePath + '\';
  if FileExists(PreservePath + ClassName + '.sav') then
  begin
    CreateNew(AOwner, 0);
    with TFileStream.Create(PreservePath + ClassName + '.sav',
                            fmOpenRead or fmShareDenyWrite) do
    try
      ReadComponent(Self);
    finally
      Free;
    end;
  end
  else
  inherited Create(AOwner);
end; 
于 2020-11-30T06:45:58.500 回答