关于delphi保存控件的问题

来源:百度知道 编辑:UC知道 时间:2024/05/19 05:23:16
我创建了一个Panel在form1上。我希望在下次启动form1的时候,panel的所有属性与我关闭时间的一样,如何解决。希望赐教!
以下是我写的代码。btn1是创建一个panel,btn2是保存panel的属性。
procedure TForm1.btn1Click(Sender: TObject);
begin
panel := TPanel.Create(nil);
with panel do
begin
Parent := self;
panel.SetBounds(50,50,130,50);
end;

end;

procedure TForm1.btn2Click(Sender: TObject);
var
fs: TFileStream;
begin
fs := TFileStream.Create('d:\tmp.dat', fmCreate or fmOpenWrite);
fs.WriteComponent(Panel1);
fs.Free
end;

procedure TForm1.FormCreate(Sender: TObject);
var
fs: TFileStream;
begin
fs := TFileStream.Create('d:\tmp.dat', fmOpenRead);
fs.ReadComponent(Panel);
fs.Free;
end;
求具体 代码

在窗体关闭事件中将panel的所有属性保存到ini文件,然后下次运行就读取ini文件中的属性,自动创建panel就行了~
uses
IniFiles

//保存ini信息
procedure TForm1.SaveInI();
var
Filenametring;
myinifile:Tinifile;
begin
Filename:=ExtractFilePath(Paramstr(0))+'Operation.ini';//获取ini
myinifile:=Tinifile.Create(filename);
myinifile.WriteInteger('Main','Bounds1',Bounds1);
//这里自己添加其他的
myinifile.Free;
end;

//读取配置文件信息
procedure TForm1.LoadInI();
var
Filename,Filestring;
myinifile:Tinifile;
begin
Files:='';
Filename:=ExtractFilePath(Paramstr(0))+'Operation.ini';//获取ini
myinifile:=Tinifile.Create(filename);
Bounds1:=myinifile.ReadInteger('Main','Bounds1',0);
//这里自己添加其他的
myinifile.Free;