我想做一个函数,传入一个窗体作为参数,然后创建并显示此窗体。
如果用application.createform()则必须提供类名,请问怎样做!
我的代码是:
function ShowForm(varForm:TForm):boolean;
begin
.
.
.
if (varForm = nil) then
Application.CreateForm( “这里不知怎末写",varForm);
varForm.Show;
Result := true;
.
.
.
end;
如果用application.createform()则必须提供类名,请问怎样做!
我的代码是:
function ShowForm(varForm:TForm):boolean;
begin
.
.
.
if (varForm = nil) then
Application.CreateForm( “这里不知怎末写",varForm);
varForm.Show;
Result := true;
.
.
.
end;
var
F: TForm;
begin
Application.CreateForm(TForm, F); <----输入TForm
F.ShowModal;
F.Caption := 'DEMO';
F.Free;
end;
“我的意思是创建一个已存在的窗体的实例!”既然是“已存在的窗体的实例”那何谓创建呢。
已经存在的说明是已经创建好的了。
比如:
我新建了一个窗体varForm,我想显示它,通常我这末写:
if (varForm = nil) then
Application.CreateForm(TvarForm,varForm);
varForm.Show;那在我的函数中这末写就提示TvarForm未定义,(注意我是把窗体作为参数传入函数的,实际我要操作的窗体不一定叫varForm,也就是说varForm只是形参),明白了末?
汗ing...
begin
.
.
.
if (varForm = nil) then
varForm := TFormClass.create(self);
varForm.Show;
Result := true;
.
.
.
end;
varForm := formClass.create(nil);
一般时导出一个函数如showform