什么意思,
form1:=tform1.create(application)
form1:=tform1.create(application)
解决方案 »
- delphi 提取txt中数据,存入到sql中
- 软件自动更新问题, 分不够再加
- 参数传递时,如何将real型参数根据‘银行家算法’保留在小数点后几位
- 请问谁有TRMDBDataSet and TRMReport的控件
- 由Delphi中的图像灰度化代码看基本图像处理~~~
- SendMessage的问题..有答案立马给100分.
- 用DELPHI控制word时,怎么添加上页眉和页脚?还有居中功能?
- 請各位幫忙!
- 请问怎样用变量替代控件名称?
- delphi xe6 又没有fastreport了呢?
- 高分求教——怎样在一个线程中处理类似nmstrm的onpacketsent的事件,我想在线程发送文件时知道发送的进度。94分奉上!94分奉上!94分奉上!94分奉上!
- 用能力请来拿分,Dll的问题...........
当然也可以用字符串,如:‘TForm1’,然后用GetClass把字符串转变为类!
with form1 do
try
showModal;
finally
free;
end;
1.建一个窗体,并在这个窗体上添加一个按钮button1。
2.在button1.onclick事件中加入如下代码:
procedure TForm1.Button1Click(Sender: TObject);
var
F:TForm;//TForm为窗体所属的类
begin
F:=TForm.Create(self);
F.Caption:='这是动态创建的窗体';
F.Show;
end;
运行程序,单击button1就可以现示你所创建的窗体了。
VSaber(☆浪人☆):你说的是对的,我也想到,但不知怎样做, 用GetClass怎样转换呢?能否给个例子
F : TForm;
begin
F := TForm1.Create(nil);
try
F.ShowModal;
finally
F.Free;
end;
end;
好好看看多态是怎样讲的就行了
TForm子类的窗口,可以象VSaber说的那么写:TMyClass = Class of TForm;procedure TFMain.CreateForm(FClass: TMyClass);
begin
with FClass.Create(self) do
try
ShowModal;
finally
Free;
end;
end;procedure TFMain.Button1Click(Sender: TObject);
begin
CreateForm(TForm2);
end;
但是用GetClass我不知如何实现???
首先建立一个你要的窗体 TYourForm,然后在另一个窗体或主程序中的某个事件中:
Procedure yourProc(sender:Tobject);
var fForm:TYourForm;
begin
fForm:=TYourForm.Create(self);
fForm.showmodal;
......
fForm.free;
end;