想在一个函数中可以结束另一个函数的运行,怎样最好,比如两个button,一个在执行一个循环(很长的吧),我想点另一个就可以结束上一个的循环运行,不至于要用到多线程吧

解决方案 »

  1.   

    用一个全局变量
    比如说
    I=100000;
    循环BUTTON 里面的代码
    for j = 0 to 10000000 do
    begin
      if i>10000 then 
      begin
      Messagebox('用户取消操作','提示',0);
      exit ;
      end ;
      Dosomething
    end ;另一个Button1里的代码
    i := 0 ;
    当你按下Button1,则停止里面的代码
      

  2.   

    不用线程就要用消息,你 自己选。****************************************************************
    无条件送您50元,人人有份!
    网址: http://chinaour.com/?puker
      

  3.   

    楼上程序修改i=1;
    循环BUTTON 里面的代码
    for j = 0 to 10000000 do
    begin
      Application.processmessages;
      if i=0 then 
      begin
      Messagebox('用户取消操作','提示',0);
      exit ;
      end ;
      Dosomething
    end ;另一个Button1里的代码
    i := 0 ;
    当你按下Button1,则停止里面的代码****************************************************************
    无条件送您50元,人人有份!
    网址: http://chinaour.com/?puker
      

  4.   

    全局变量完全可以解决问题。
    Var  TerminateFlag:Boolean;for j = 0 to 10000000 do
    begin
      if TerminateFlag then 
      begin
      Messagebox('用户取消操作','提示',0);
      exit ;
      end ;
      Dosomething
    end ;
      

  5.   

    楼上的,你少写了Application.processmessages;了。不然你这个不管用的。