procedure TForm1.Button1Click(Sender: TObject);
var
n_p1_x,n_p1_y,n_p2_x,n_p2_y,n_p3_x,n_p3_y:integer;
o_p1_x,o_p1_y,o_p2_x,o_p2_y,o_p3_x,o_p3_y:integer;
i:integer;
begin
o_p1_x:=100;
o_p1_y:=10;
o_p2_x:=45;
o_p2_y:=45;
o_p3_x:=180;
o_p3_y:=60;
for i:=1 to 100 do
begin
n_p1_x:=o_p1_x+5;
n_p1_y:=o_p1_y+5;
n_p2_x:=o_p2_x+5;
n_p2_y:=o_p2_y+5;
n_p3_x:=o_p3_x+5;
n_p3_y:=o_p3_y+5;
canvas.pen.color:=clred;
canvas.Polyline([point(n_p1_x,n_p1_y),point(n_p2_x,n_p2_y),point(n_p3_x,n_p3_y),point(n_p1_x,n_p1_y)]);
sleep(100);
canvas.pen.color:=clbtnface;
canvas.Polyline([point(o_p1_x,o_p1_y),point(o_p2_x,o_p2_y),point(o_p3_x,o_p3_y),point(o_p1_x,o_p1_y)]);
o_P1_x:=n_p1_x;
o_P1_y:=n_p1_y;
o_P2_x:=n_p2_x;
o_P2_y:=n_p2_y;
o_P3_x:=n_p3_x;
o_P3_y:=n_p3_y;
if flag=1 then
continue
else
break;
end;
end;procedure TForm1.Button2Click(Sender: TObject);
begin
flag:=2;
end;procedure TForm1.Button3Click(Sender: TObject);
begin
flag:=1;
button1.click;
end;
var
n_p1_x,n_p1_y,n_p2_x,n_p2_y,n_p3_x,n_p3_y:integer;
o_p1_x,o_p1_y,o_p2_x,o_p2_y,o_p3_x,o_p3_y:integer;
i:integer;
begin
o_p1_x:=100;
o_p1_y:=10;
o_p2_x:=45;
o_p2_y:=45;
o_p3_x:=180;
o_p3_y:=60;
for i:=1 to 100 do
begin
n_p1_x:=o_p1_x+5;
n_p1_y:=o_p1_y+5;
n_p2_x:=o_p2_x+5;
n_p2_y:=o_p2_y+5;
n_p3_x:=o_p3_x+5;
n_p3_y:=o_p3_y+5;
canvas.pen.color:=clred;
canvas.Polyline([point(n_p1_x,n_p1_y),point(n_p2_x,n_p2_y),point(n_p3_x,n_p3_y),point(n_p1_x,n_p1_y)]);
sleep(100);
canvas.pen.color:=clbtnface;
canvas.Polyline([point(o_p1_x,o_p1_y),point(o_p2_x,o_p2_y),point(o_p3_x,o_p3_y),point(o_p1_x,o_p1_y)]);
o_P1_x:=n_p1_x;
o_P1_y:=n_p1_y;
o_P2_x:=n_p2_x;
o_P2_y:=n_p2_y;
o_P3_x:=n_p3_x;
o_P3_y:=n_p3_y;
if flag=1 then
continue
else
break;
end;
end;procedure TForm1.Button2Click(Sender: TObject);
begin
flag:=2;
end;procedure TForm1.Button3Click(Sender: TObject);
begin
flag:=1;
button1.click;
end;
begin
while flag=1 do
begin
Application.ProcessMesseges;
Sleep(100);
end;....
begin
tag := 1;
end;procedure TForm1.Button3Click(Sender: TObject);
begin
tag := 2;
end;procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
begin
for i:=0 to 50 do
begin
application.ProcessMessages;
sleep(100); while tag = 1 do
begin
application.ProcessMessages;
sleep(100);
end; caption := inttostr(i);
end;
end;
begin
application.ProcessMessages;
sleep(100);
这两句加了没有?