海
海皇
Unregistered / Unconfirmed
GUEST, unregistred user!
有多个子窗体,判断子窗体是否存在,如不存在就创建并显示,然后在子窗体下用一个按钮调用新的编辑窗体,可是调用之后,显示子窗体为nil。
第一次启动软件没有问题。关闭子窗体再打开之后就有这个问题。
启动软件时是用Application.CreateForm(TPayOutFrm, PayOutFrm)。
关闭之后用下面函数创建子窗体PayOutFrm。
procedure TMainFrm.SubFromShow(Caption: string; SubFrmClass: TFormClass);
var
I: Integer;
SubFrm: TForm;
begin
for I := 0 to Screen.FormCount - 1 do // Iterate
begin
if (Screen.Forms.Caption = Caption) then
begin
Screen.Forms.BringToFront();
Exit;
end
else
begin
SubFrm := SubFrmClass.Create(application);
SubFrm.Show();
Exit;
end;
end;
end;
这个函数有问题吗?
第一次启动软件没有问题。关闭子窗体再打开之后就有这个问题。
启动软件时是用Application.CreateForm(TPayOutFrm, PayOutFrm)。
关闭之后用下面函数创建子窗体PayOutFrm。
procedure TMainFrm.SubFromShow(Caption: string; SubFrmClass: TFormClass);
var
I: Integer;
SubFrm: TForm;
begin
for I := 0 to Screen.FormCount - 1 do // Iterate
begin
if (Screen.Forms.Caption = Caption) then
begin
Screen.Forms.BringToFront();
Exit;
end
else
begin
SubFrm := SubFrmClass.Create(application);
SubFrm.Show();
Exit;
end;
end;
end;
这个函数有问题吗?