var frm:TForm1 begin frm := TForm1.Create(Application); frm.Show; end;
//在Form1中增加事件处理函数,比如OnCreate事件 procedure TForm1.OnFormCreate(Sender:TObject); begin //事件处理过程 end;//假如动态创建的窗体的TForm2,那么在TForm1中创建TForm2with TForm2.Create(self) do begin OnCreate:=OnFormCreate; Show; end;
procedure TForm1.Button1Click(Sender: TObject); begin WriteComponentResFile('c:\frm.res', Form1); end;procedure TForm1.Button2Click(Sender: TObject); var frm: TForm1; begin frm:= TForm1.CreateNew(Application); ReadComponentResFile('c:\frm.res, frm); end;要這個效果?
var
frm:TForm1
begin
frm := TForm1.Create(Application);
frm.Show;
end;
//在Form1中增加事件处理函数,比如OnCreate事件
procedure TForm1.OnFormCreate(Sender:TObject);
begin
//事件处理过程
end;//假如动态创建的窗体的TForm2,那么在TForm1中创建TForm2with TForm2.Create(self) do
begin
OnCreate:=OnFormCreate;
Show;
end;
begin
WriteComponentResFile('c:\frm.res', Form1);
end;procedure TForm1.Button2Click(Sender: TObject);
var
frm: TForm1;
begin
frm:= TForm1.CreateNew(Application);
ReadComponentResFile('c:\frm.res, frm);
end;要這個效果?
BinStream:TMemoryStream;
StrStream: TStringStream;
s: string;
begin
BinStream := TMemoryStream.Create;
try
StrStream := TStringStream.Create(s);
try
BinStream.WriteComponent(Component);
BinStream.Seek(0, soFromBeginning);
ObjectBinaryToText(BinStream, StrStream);
StrStream.Seek(0, soFromBeginning);
Result:= StrStream.DataString;
finally
StrStream.Free; end;
finally
BinStream.Free
end;
end;function StringToComponent(Value: string): TComponent;
var
StrStream:TStringStream;
BinStream: TMemoryStream;
begin
StrStream := TStringStream.Create(Value);
try
BinStream := TMemoryStream.Create;
try
ObjectTextToBinary(StrStream, BinStream);
BinStream.Seek(0, soFromBeginning);
Result := BinStream.ReadComponent(nil); finally
BinStream.Free;
end;
finally
StrStream.Free;
end;
end;
这样是没问题,我试过是可以,就是不知道怎么加事件,如果里面有个button事件,我该怎么加呢