我的登录界面的设计方法是:frmMain为主窗体,主窗体Onshow的时候调用登录窗体,代码如下
其实程序本身没有什么问题,就是如果登录窗体frmLogin点退出登录按钮,直接关闭整个程序application.Terminate,这个时候会闪一下,其实就是主窗体很快的关闭的一瞬间,也没有什么影响,但我觉得有点不太自然,如果和我做登录窗体思路一样的朋友也肯定会遇到过这个小问题,不知有没有什么办法解决,让整个程序关闭的自然些。
procedure TfrmMain.FormShow(Sender: TObject);
begin
  application.CreateForm(TfrmLogin,frmLogin);
  frmLogin.ShowModal;
  frmLogin.Free;
end;

解决方案 »

  1.   

    application.Terminate前加上frmMain.Close;
    ExitProcess(0);
      

  2.   

    测试了一下,RoverX 的回答是对的,只要加上ExitProcess(0);这一句就不闪了,至于frmMain.Close;加不加都行,我就是不明白ExitProcess(0);这句究竟是什么意思,网上也没有确切答案,能否赐教,谢谢
      

  3.   

    可以考虑在source里面这样做begin
      Application.Initialize;
      Application.ShowMainForm  :=  False;
      Application.CreateForm(TFrmMain, FrmMain);
      Application.CreateForm(TFrmLogin, FrmLogin);
      if FrmLogin.ShowModal   =mrCancel then
         FrmMain.Close
      else
         FrmMain.Show;
      Application.Run;
    end.
      

  4.   

    http://www.delphibbs.com/delphibbs/dispq.asp?lid=184877http://msdn.microsoft.com/en-us/library/ms682658(VS.85).aspx