我想在程序的主form启动之前,先显示一个form1,并且让他保留1~2分钟,然后hide,主form这时再运行,怎么实现?

解决方案 »

  1.   

    我一般是在主form.OnFormShow里form1.ShowModal,好像不能放在OnFormCreate里如果动态创建form1的话要更好一点
      

  2.   

    http://expert.csdn.net/Expert/topic/1695/1695223.xml?temp=4.734439E-02
      

  3.   

    在工程文件中写入
    begin
      Application.Initialize;
      Application.Title := '你的软件的名字';
      Application.CreateForm(TFirstFrm, FirstFrm);
      Application.CreateForm(TMainFrm, MainFrm);
      Application.Run;
    end.在firstFrm上面放上一个timer控件,将它的interval属性摄制成你想要的时间
    然后再在它的ontimer事件中写入  close;
    在窗体的onclose事件中写入action:=cafree;
      

  4.   

    在工程文件中 
    begin
      Application.Initialize;
      FrmFace := TFrmFace.Create(Application); {建立徽标Form}
      Frmface.AlphaBlend := false;
      FrmFace.Show; {显示徽标Form}
      FrmFace.Update; {重画徽标Form}
      Application.CreateForm(TFrmMain, FrmMain);
      Frmface.AlphaBlend := true;
      Frmface.Update;
      while frmface.AlphaBlendValue > 15 do
        frmface.AlphaBlendValue := frmface.AlphaBlendValue - 5;
      FrmFace.Hide; {隐藏徽标Form,使主Form显示出来}
      FrmFace.Free; {释放徽标Form占用的资源}
      Application.Run;
    end.
      

  5.   

    楼上的能说详细一点吗?
      是from.OnFormShow(sender:Object);
         begin
           Application.CreateForm(TForm1,Form1);
           Form1.ShowModal;
           
         end;
        那什么时候释放?
      

  6.   

    修改工程文件:
    在application.initialize;
    前面写入:
      form4:=Tform4.create(application);
      form4.show;
      form4.Update;
    再在Application.CreateForm(TForm1, Form1);后面写入:
    form4.close;
    如果需要控制form4的显示时间的话就要在你要显示的窗体中加入一个timer控件
      

  7.   

    Application.Initialize;
    form1:=form1.Create(Application);
    form1.Show;
    form1.Update;
    ……
    //这里用timer处理一下,然后再创建mainform
      

  8.   

    program rsgl;uses
      Forms,
      mainu in 'Mainu.pas' {main},
      logu in 'LOGU.PAS' {log},
      datau in 'DATAU.PAS' {data},
      flashfmu in 'FLASHFMU.PAS' {flashfm},
      emplistu in 'EMPLISTU.PAS' {emplist},
      empoweru in 'EMPOWERU.PAS' {empower},
      kxxwhu in 'KXXWHU.PAS' {kxxwh},
      aboutu in 'ABOUTU.PAS' {about},
      select in 'SELECT.PAS' {selectfrm},
      chgpwdu in 'CHGPWDU.PAS' {chgpwd},
      desk in 'desk.pas' {deskfrm},
      setprint in 'SETPRINT.PAS' {printsetfrm},
      zxdc_mcu in 'ZXDC_MCU.PAS' {zxdc_mx},
      dwzcu in 'DWZCU.PAS' {dwzc},
      ryda in 'ryda.pas' {rydafrm},
      js in 'js.pas' {jsfrm},
      rybd in 'rybd.pas' {rybdfrm},
      lvli in 'lvli.pas' {lvlifrm},
      gzbwh in 'gzbwh.pas' {gzbwhfrm},
      kmsz in 'kmsz.pas' {kmszfrm},
      opengz in 'opengz.pas' {opengzfrm},
      kqb in 'kqb.pas' {kqbfrm},
      kaoqin in 'kaoqin.pas' {kaoqinfrm},
      rdjjfz in 'rdjjfz.pas' {rdjjfzfrm},
      jiangli in 'jiangli.pas' {jianglifrm},
      cc in 'cc.pas' {chengchufrm},
      cjk in 'cjk.pas' {qtxxfrm},
      func in '..\..\vcl\func\FUNC.PAS',
      zcpd in 'zcpd.pas' {zcpdfrm},
      px in 'px.pas' {pxfrm};{$R *.res}
      var i:integer;
    begin
      flashfm:=Tflashfm.create(application);//建立显示窗口并显示
      flashfm.show;
      flashfm.Update;
      Application.Initialize;
      Application.Title := '人事管理';
      Application.CreateForm(Tmain, main);
      Application.CreateForm(Tlog, log);
      Application.CreateForm(Tdata, data);
      Application.CreateForm(Tflashfm, flashfm);
      Application.CreateForm(Templist, emplist);
      Application.CreateForm(Tempower, empower);
      Application.CreateForm(Tkxxwh, kxxwh);
      Application.CreateForm(Tabout, about);
      Application.CreateForm(Tselectfrm, selectfrm);
      Application.CreateForm(Tchgpwd, chgpwd);
      Application.CreateForm(Tdeskfrm, deskfrm);
      Application.CreateForm(Tprintsetfrm, printsetfrm);
      Application.CreateForm(Tzxdc_mx, zxdc_mx);
      Application.CreateForm(Tdwzc, dwzc);
      Application.CreateForm(Trydafrm, rydafrm);
      Application.CreateForm(Tjsfrm, jsfrm);
      Application.CreateForm(Trybdfrm, rybdfrm);
      Application.CreateForm(Tlvlifrm, lvlifrm);
      Application.CreateForm(Tgzbwhfrm, gzbwhfrm);
      Application.CreateForm(Tkmszfrm, kmszfrm);
      Application.CreateForm(Topengzfrm, opengzfrm);
      Application.CreateForm(Tkqbfrm, kqbfrm);
      Application.CreateForm(Tkaoqinfrm, kaoqinfrm);
      Application.CreateForm(Trdjjfzfrm, rdjjfzfrm);
      Application.CreateForm(Tjianglifrm, jianglifrm);
      Application.CreateForm(Tchengchufrm, chengchufrm);
      Application.CreateForm(Tqtxxfrm, qtxxfrm);
      Application.CreateForm(Tzcpdfrm, zcpdfrm);
      Application.CreateForm(Tpxfrm, pxfrm);
      flashfm.Close;//关闭显示窗口
      flashfm.Free;
      log.showmodal;//登录窗口
      if log.ModalResult=1 then
      Application.Run
      else
         begin
           for  i :=screen.FormCount - 1 downto 0 do
           begin
           screen.Forms[i].close;
           screen.Forms[i].free;
           end;
           Application.Terminate;
         end;
    end.