一个主界面,一个登录界面。主界面是通过Data Module动态建立,在主程序FormCreate的时候建立登录界面。在检测用户名及密码正确后进入主界面。可是不知道为什么在进入主界面时主界面闪一下就关闭了。。各位高手些帮忙解决下。。先谢了!!

解决方案 »

  1.   

    那是因为你先创建的登陆界面,后创建的主界面
    可以在工程文件中这样处理
    Application.CreateForm(TfrmMain, frmMain);
    Application.CreateForm(TDataModule1, DataModule1);
    Application.CreateForm(TfrmLogin, frmLogin);
    FrmMain.Hide;
    frmLogin.ShowModal;
    Application.Run;
    这样登陆到主界面以后就不会自动退出了
      

  2.   

    不是哈。。我先用Data Module连接数据库,如果连接成功则动态建立主界面,并在主界面FormCreate的时候建立登录界面。在登录界面中用户名和密码都正确的话则关闭登录界面进入主界面。。可是我用肉眼看到的主界面闪了一下就关闭了。
      

  3.   

    先看看进程里程序是否真的关闭了
    其实写登陆界面先创建主界面后创建登陆界面 不需要动态创建
    简单的方法
    用Form1当启动窗体,uses unit2; 
    在Form2中设置两个按钮,把它们的Caption分别设置为:确认、取消,ModelResult属性分别设置为:mrYes、mrNo 
    在Form1的OnShow中来判断 
    procedure TForm1.FormShow(Sender: TObject); 
    begin 
    if (Form2.ShowModal <> mrYes) or 
    (Form2.Edit1.Text <> '2') or 
    (Form2.Edit2.Text <> '3') then 
    close; 
    {也即是当不添入正确的用户名和密码,以及在选择按钮的时候没有点确认的时候,程序自动关闭} 
    end;