为什么我的启动窗体不能卸载?感谢非常 (100分)

  • 主题发起人 主题发起人 joehut
  • 开始时间 开始时间
J

joehut

Unregistered / Unconfirmed
GUEST, unregistred user!
那位大哥帮忙分析,感谢非常

Flash:=TFlash.Create(Application);{Create创建闪现窗口对象}
flash.Show;
flash.Update;
Application.Initialize;
Application.CreateForm(Tmain, main);
Application.CreateForm(TFlash, Flash);

Flash.Hide;
Flash.Free;{Free从内存中释放对象}

Application.Run;
 
不要下面的
flash.Update;
Application.CreateForm(TFlash, Flash);
Flash.Hide;

这个Application.Initialize;放在flash.Show;
之前!
 
程序上没有任何问题。
可能是你的主窗体的onActive事件里的哪段代码抛出了异常。
 
我这样写的没有问题呀!
begin
Application.Initialize;

Form3 := TForm3.Create(Application);
Form3.Show;
Form3.Update;

Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm2, Form2);

Form3.Hide;
Form3.Free;
Application.Run;
end.
 
哦,对了,你怎么又创建了一次!?呵呵。
 
对呀,你把Flash创建了两遍,难怪[:D][:D][:D]...
 
在Option中把TFlash去掉!
 
创建了两遍FLASH,我以前也犯过差不多的问题。
 
参照一下代码:
begin
Application.Initialize;
Application.CreateForm(TSapDataModule, SapDataModule);
if not IniDatabase then Exit;
sap := TSAP.Create;

Frm_splash := TFrm_splash.Create(Application);
Frm_splash.Show;
Frm_splash.Update;

while Frm_splash.Timer1.Enabled do
Application.ProcessMessages;
if not SysLogin then Exit;
Frm_splash.Hide;
Frm_splash.Free;

Application.CreateForm(TFrm_main, Frm_main);
Application.Run;
end.
 
接受答案了.
 
后退
顶部