开发Delphi对象式数据管理功能(五),开发Delphi对象式数据管理功能(五)
【 tulaoshi.com - Delphi 】
20.3.1.1写DFM文件的过程:WriteComponentResFie
该过程带有两个参数FileName和Instance。FileName参数指定要写入的DFM文件名,Instance参数是TComponent类型的,它指定要写入的部件名,一般是TForm对象的子类。该过程将Instance部件和其拥有的所有部件写入DFM文件。
这个过程的意义在于,可以在程序运行过程中产生Delphi的窗体部件和在窗体中插入部件,并由该函数将窗体写入DFM文件,支持了动态DFM文件的重用性。
该过程的程序是这样的:
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/delphi/)
procedure WriteComponentResFile(const FileName: string; Instance: TComponent);
var
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/delphi/)Stream: TStream;
begin
Stream := TFileStream.Create(FileName, fmCreate);
try
Stream.WriteComponentRes(Instance.ClassName, Instance);
finally
Stream.Free;
end;
end;
函数中,用FileStream创建文件,用Stream对象的WriteComponetRes方法将Instance写入流中。
20.3.1.2 读DFM文件的函数:ReadComponentResFile
ReadComponentResFile函数带有两个参数FileName和Instance。FileName参数指定要读DFM文件名,Instance参数指定从DFM文件中要读的部件。该函数从DFM文件中将Instance和它拥有的所有部件,并返回该部件。
这个函数的意义在于,配合WriteComponentResFile过程的使用支持DFM文件的重用性。
该函数的程序是这样的:
function ReadComponentResFile(const FileName: string; Instance: TComponent):
TComponent;
var
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/delphi/)Stream: TStream;
begin
Stream := TFileStream.Create(FileName, fmOpenRead);
try
Result := Stream.ReadComponentRes(Instance);
finally
Stream.Free;
end;
end;
程序中使用FileStream对象打开由FileName指定的DFM文件,然后用Stream对象的ReadComponentRes方法读出Instance,并将读的结果作为函数的返回值。
20.3.1.3
来源:http://www.tulaoshi.com/n/20160129/1493069.html
看过《开发Delphi对象式数据管理功能(五)》的人还看了以下文章 更多>>