导读:
因为项目需要在一个窗体上动态创建组件对象,并且能够把这些对象保存到一个文件中,一开始就考虑到了要使用流技术,因为在delphi中组件可以通过流的方式保存到文件中。然后做了个小实验,两个窗口,其中一个为动态创建,在非动态创建窗口上设三个按钮,其中一个动态创建窗体和组件对象
procedure TForm1.Button3Click(Sender: TObject);
begin
Form2 := TForm2.Create(Application);
Form2.Show;
end;
然后一个按钮保存这些对象到文件当中,其中使用了函数WriteComponentResFile,SaveDialog1.Filename就是要保存的文件名:
procedure TForm1.Button2Click(Sender: TObject);
var
Ctrl : TControl;
begin
if SaveDialog1.Execute then
begin
WriteComponentResFile(SaveDialog1.FileName, Form2);
Form2 := nil;
end;
end;
然后关闭该窗体,调用另外一个按钮,从文件中把窗体对象和组件对象读取出来,其中使用了函数ReadComponentResFile
procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
begin
Form2 := TForm2.Create(A
因为项目需要在一个窗体上动态创建组件对象,并且能够把这些对象保存到一个文件中,一开始就考虑到了要使用流技术,因为在delphi中组件可以通过流的方式保存到文件中。然后做了个小实验,两个窗口,其中一个为动态创建,在非动态创建窗口上设三个按钮,其中一个动态创建窗体和组件对象
procedure TForm1.Button3Click(Sender: TObject);
begin
Form2 := TForm2.Create(Application);
Form2.Show;
end;
然后一个按钮保存这些对象到文件当中,其中使用了函数WriteComponentResFile,SaveDialog1.Filename就是要保存的文件名:
procedure TForm1.Button2Click(Sender: TObject);
var
Ctrl : TControl;
begin
if SaveDialog1.Execute then
begin
WriteComponentResFile(SaveDialog1.FileName, Form2);
Form2 := nil;
end;
end;
然后关闭该窗体,调用另外一个按钮,从文件中把窗体对象和组件对象读取出来,其中使用了函数ReadComponentResFile
procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
begin
Form2 := TForm2.Create(A

本文介绍了如何在Delphi应用程序中动态创建组件并将其保存到DFM文件,通过WriteComponentResFile和ReadComponentResFile函数实现保存和加载。详细步骤包括动态创建窗体、保存窗体及组件到文件、从文件中读取恢复窗体和组件,以及在单元中注册组件类。
最低0.47元/天 解锁文章
732

被折叠的 条评论
为什么被折叠?



