我做了个小系统,有启动画面,登陆界面很主界面,其中登陆界面是在主界面的oncreate事件中通过下面语句创建的
  try
     loginform:=Tloginform.Create(application);
     loginform.showmodal;
    finally
   loginform.free;
  end;在登陆界面有个退出按钮,我用了Application.Terminate;语句,现在存在的问题是:我一按退出按钮,程序并不能立即结束,而是主界面还要显示出来1秒左右才结束,这样很不好看,请问大家这是怎么回事,能不能让主界面不显示就立即结束。

解决方案 »

  1.   

    在调用登录界面之前将主界面Hide了,需要用到时再Show,应该可以吧
      

  2.   

    设计期设置主窗口的Visible := False,登陆成功才show出来,或者是登陆成功才创建主窗口
      

  3.   

    同意楼上做法,或者直接用delphi自带的login框
      

  4.   

    用Visible := False这种方法是可以看不见主窗体,但是程序还是要等1秒中后才能终止,感觉有点缺憾,有没有办法让立即结束.
      

  5.   

    Terminate后并不是立即就结束程序的.在Application.Terminate;前加句
    Application.ShowMainForm:=False;
    就能达到你要的效果了.
      

  6.   

    用timer加在第二个窗体中,当第二个窗体运行时Timer开始工作,将第一个窗体Hide后,Timer的Enabled为False