procedure A.x(...) begin if ... then begin if not assigned(b) then b:= tform2.create(nil); b.showmodal; A.hide; end; end;
在工程里写到。 Application.Initialize; with TFrmSplash.Create(FrmSplash) do try ShowModal; finally Free; end; Application.CreateForm(TDM, DM); FrmLogin := TFrmLogin.Create(FrmLogin); if FrmLogin.ShowModal = 1 then begin Application.CreateForm(TFrmMain, FrmMain); Application.Run; end else begin DM.Free; Application.Terminate; end; end.
if panduan then with TFormB.Create(NIL) do Try begin ShowModal; end; Finally Free; end;
bb为布尔型全局变量,可在公用单元声明 Application.CreateForm(TA, A); try A.showmodal;//在窗口A执行条件判断, finally A.Free; end; if bb then Application.CreateForm(TB, B);
procedure A.x(...) begin if ... then begin if not assigned(b) then b:= Tb.create(self); //或 if not assigned(b) then b:= Tb.create(application); hide;//close; b.showmodal;//b.show; freeandnil(b); end; end;
b.show;和 freeandnil(b);不能搭配
if CanCreateB then begin self.hide; b:=TB.Create(self); b.showmodal; b.Free; b:=nil; a.show; end;
if ........ then Application.CreateForm(TDmMain, DmMain);
dmmain.ShowModal;
if ... then begin mainform.hide; with Tformb.Create(nil) do try showmodal; finally free; end; mainform.show; end;
begin
if ... then
begin
if not assigned(b) then b:= tform2.create(nil);
b.showmodal;
A.hide;
end;
end;
Application.Initialize;
with TFrmSplash.Create(FrmSplash) do
try
ShowModal;
finally
Free;
end;
Application.CreateForm(TDM, DM);
FrmLogin := TFrmLogin.Create(FrmLogin);
if FrmLogin.ShowModal = 1 then
begin
Application.CreateForm(TFrmMain, FrmMain);
Application.Run;
end
else
begin
DM.Free;
Application.Terminate;
end;
end.
with TFormB.Create(NIL) do
Try
begin
ShowModal;
end;
Finally
Free;
end;
Application.CreateForm(TA, A);
try
A.showmodal;//在窗口A执行条件判断,
finally
A.Free;
end;
if bb then
Application.CreateForm(TB, B);
procedure A.x(...)
begin
if ... then
begin
if not assigned(b) then b:= Tb.create(self);
//或 if not assigned(b) then b:= Tb.create(application);
hide;//close;
b.showmodal;//b.show;
freeandnil(b);
end;
end;
begin
self.hide;
b:=TB.Create(self);
b.showmodal;
b.Free;
b:=nil;
a.show;
end;
if ........ then
Application.CreateForm(TDmMain, DmMain);
dmmain.ShowModal;
begin
mainform.hide;
with Tformb.Create(nil) do
try
showmodal;
finally
free;
end;
mainform.show;
end;