Delphi如何处理在进行大量循环时,致使的应用程序没有响应的状况

通常用在比较费时的循环中,每每致使应用程序没有响应,此时在比较费时的程序体中加入Application.ProcessMessages便可解决,该语句的做用是检查并先处理消息队列中的其余消息。测试

     例如,在以下的程序中,加入该语句,则在程序运行过程当中能够随便拖动窗口。spa

procedure TForm1.Button1Click(Sender: TObject); 
var 
  i: Integer; 
begin 
  for i := 0 to 500000 do 
  begin 
    Canvas.TextOut(10, 10, IntToStr(i)); 
    Application.ProcessMessages; 
  end; 
end; 

      该程序在Delphi 10.1下测试过,没有问题。orm

相关文章
相关标签/搜索