procedure TForm1.Button4Click(Sender: TObject);
var
  i: integer;
begin
  for i := 0 to ListView1.Items.Count - 1 do begin
    if ListView1.Items[i].Checked then begin
.....
//如何循环一次后暂停,等Finish完成为真再继续?
    end;
  end;
end;procedure TForm1.Finish(Sender: TObject);//如何当这个过程完成后给Button4Click返回个真或假?
beginend;

解决方案 »

  1.   

    var 
     fFlag : Boolean;
    procedure TForm1.Button4Click(Sender: TObject);
    var
      i: integer;
    begin
      for i := 0 to ListView1.Items.Count - 1 do begin
        bFlag := False;
        if ListView1.Items[i].Checked then begin
         .....
        //如何循环一次后暂停,等Finish完成为真再继续?
         while not bFlag then
           Application.ProcessMessage; 
        end;  end;
    end;
    procedure TForm1.Finish(Sender: TObject);//如何当这个过程完成后给Button4Click返回个真或假?
    begin
      bFlag := True;
    end;
      

  2.   

    var 
      bFlag : Boolean;