在form窗口中有兩個按鈕 Button1,Button2當用戶按下Button1后,程序幵始進入多個
for...循環和while...循環, 一般每次執行都要几分鐘才能退出。 我想在按下Button2時
強行終止循環并退出,所以在Button2中加入了break語句。
    但是當我按下Button1后, 如果循環沒有結束,我就沒辦法按下Button2,請問:
    
    怎樣在任何時間,隨意終止程序的執行?

解决方案 »

  1.   

    for 循环中 加入 Application.processmessage;或建立多线程   建立多线程效果要好
      

  2.   

    定义一个From级的变量
    Var
      bLoop : boolean;
    procedure Form1.Button1click(sender : Tobject);
    begin
      While bLoop do
      begin
        Memo1.lines.add('loop');
        Application.processmessages;
      end;
    end;procedure Form1.Button2click(sender:Tobject);
    begin
      bLoop := False;
    end;
    我这里没有Delphi,所以语法一定对,但思路是这样!
      

  3.   

    不是特别需要,不要多线程,象 Wnyu(能)说的那样,在循环中加入Application.processmessage交出一些时间片处理系统消息就可以了
     
      

  4.   

    各位大師:請問使用Application.processmessage時應該引用哪一個單元?