请问delphi中如何显示信息后,自动继续执行下面的程序。

解决方案 »

  1.   

    通常是显示信息窗口然后sleep 几秒,然后关闭这个窗口,在继续就行了
      

  2.   

    你实际上是要做一个启动窗口,对不?你可以这样做:
    0、前提:你的主窗口假设叫做Form1
    1、在你的工程中添加一个窗口可把它命名为FormSplash,在它上面放一个Image控件,如果你想显示什么信息字之类,再放上几个Label控件。
    2、设置Project Options选项(在菜单中选择Project Option…),打开这个对话框,选Forms页。设置Form1为FormMain,再将FormSplash从Auto-create forms中移到Avalilabe forms中。
    3、在菜单中选择"Project-->View Source"命令,打开工程源文件,将Begin…End中的代码修改成下面的样子:
    Begin
      FormSplash:=TFormSpalsh.Creat(Application);  //创建启动窗口
      FormSplash.Show;
      FormSplash.Update;
      {以上语句必须写在Application.Initialize之前}
      Application.Initialize;
      Application.CreateForm(TmainForm,Form1);   //Form1为程序主窗口
      FormSplash.Hide;
      FormSplash.Free;
      Application.Run;
    end
    现在可以执行程序了你会看到启动窗口,如果你的程序太简单,你可能会看不到启动窗口,如果你是一个数据库应用程序,因要启动BDE引擎,需要一些时间,这时你能看到启动窗口。
    对简单的程序来说,若也想看到启动窗口,可在FormSplash.Hide前加入延时,但通常不建议这么做。
      

  3.   

    //信息show窗口form1form1.show;
    //可以在form1加个timer1,到时间就form1.close;//继续
    ........
      

  4.   

    有没有象foxpro的wait 命令。
      

  5.   

    有没有象foxpro的wait 命令。
      

  6.   

    有没有象foxpro的wait 命令。
      

  7.   

    要实现foxpro中的wait,可以在//信息show窗口form1上处理键盘事件,
    如果有键击则关闭窗口,应用自然继续往下执行.
      

  8.   


    var EventHandle : THandle;EventHandle := CreateEvent(Nil,true,false,'KeyEvent');ObjRtn := WaitForSingleObject(EventHandle,6000);
    ResetEvent(EventHandle);
    if ObjRtn = WAIT_FAILED then
     你的代码
      ;  //超时则....
    CloseHandle(EventHandle);
      

  9.   

    做一个窗口,只需放一个Label控件即可,且把该窗口叫做frmWait,它的unit单元叫做myWait。
    如同做启动窗口一样,把它加入到Avalilabe forms中,以便在需要的时候即时创建。
    假设Form1中的某个按钮在按下后有大量计算工作要做你想显示如同foxpro的wait。则在该按钮在Click事件中加入如下命令;procedure TForm1.cmdOKClick(Sender: TObject);begin
      Screen.Cursor := crHourGlass;
      frmWait:=TFrmWait.Create(Application);
      frmWait.Label1.Caption :='希望在wait窗口中出现的提示语句';
      frmWait.Show ;
      frmWait.Update ;
      {
         .......
         .......
         此处是你的语句
         .......
         .......
       }
       Screen.Cursor := crArrow;
       frmWait.Hide;
       frmWait.Free;
    end;   
    这样应该是你希望的wait了,不过,用进度条不是更好吗?那样更生动一些