如何将showmodal窗口 隐藏

解决方案 »

  1.   

    你可以直接用Close方法把该窗口关闭,
    应为在你下次调用  原窗口名称.Open时
    你原来窗口所作的变更有恢复了!
    ======================================
    所以:需然说Close掉了,但是与隐藏的功能一样!
      

  2.   

    噢!我补充一句:原窗口名称.ShowModal
      

  3.   

    loginform  主窗框
       if datamodule1.ADOQuery1.RecordCount<>0 then
        begin
        //____________________________________________________________
        showmessage('成功登陆!!');
        loginForm.Close;
      //_______________________________________________________________
          Application.CreateForm(TForm1, Form1);
          Application.CreateForm(TParamForm, ParamForm);
          Application.CreateForm(TfrmOutPut, frmOutPut);
          Application.CreateForm(TpersoninputQuery, personinputQuery);
          Application.CreateForm(TstatisticsInputForm, statisticsInputForm);
          Application.CreateForm(TPersonOutPutQueryForm, PersonOutPutQueryForm);
          Application.CreateForm(TStatisticsOutputForm, StatisticsOutputForm);
          Application.CreateForm(TQueryForm, QueryForm);
          Application.CreateForm(TfrmAddOrDec_ltx, frmAddOrDec_ltx);
          Application.CreateForm(TfrmBtQurey, frmBtQurey);
          Application.CreateForm(TfrmBtStat, frmBtStat);
          Application.CreateForm(TfrmOutPutQurey, frmOutPutQurey);
          Application.CreateForm(TfrmAddOrDec, frmAddOrDec);
          Application.CreateForm(Tpersoninput, personinput);
         Application.Run;
           end
        else
        begin
           showmessage('你输入的姓名或密码有误,请重新输入!');
           LoginForm.Refresh;
           loginName.SetFocus;
        end;
    project.dpr
      begin
      Application.Initialize;  Application.CreateForm(TDataModule1, DataModule1);
      Application.CreateForm(TLoginForm, LoginForm);
      LoginForm.ShowModal; 
    end.
    ______________________________________________________________
    贴出部分程序  ,close 我用了  不管用!!还有没有别的方法  loginForm.visibls:=false;
    也是不管用
      

  4.   

    你这样做的话
    LoginForm是主程序...
    肯定不能啦..
    如果close那么主程序都关闭了..
      

  5.   

    呵呵  怎么办那?  Application.ShowMainForm:=false;  也不能用
      

  6.   

    狂晕,你这样当然隐藏不了,你把窗口隐藏的代码(loginform.hide),放在application.run之前,又因为它是主窗体!!即使隐藏也会被再次显示!如果,你把它放在application.run,之后,就没问题了!
      

  7.   

    登录窗口一般不应作为主窗口用,你用一个新的窗体做为登录窗口,登录成功后把它FREE掉,再把主窗口显示出来不就行了吗?
      

  8.   

    KAO,怎么这样子放的?????????这样
    Application.CreateForm(TForm1, Form1);
    ...................
    ===============================
    LoginForm:=TLoginForm.CreateForm(application);
    LoginForm.Visible:=false;
    LoginForm.ShowModal; 
    =============================
    Application.Run;登录后loginform.close就可以关了
    然后你再做其它事