gpt4 book ai didi

delphi - Delphi Timer问题

转载 作者:行者123 更新时间:2023-12-03 18:52:46 26 4
gpt4 key购买 nike

procedure TForm1.Timer1Timer(Sender: TObject);
var
i : integer;
begin
if i > StrToInt(Edit1.Text) then
Timer1.Enabled := False
else
i :=+ 1;
SendClick(645,302);
Sleep(2200);
SendClick(694,619);
Sleep(2200);
SendClick(967,638);
Sleep(2200);
SendKeys('{BKSP}{BKSP}{BKSP}{BKSP}1',False);
SendClick(917,688);
Sleep(2200);
SendClick(917,688);
Sleep(2200);
SendClick(917,688);
amount := StrToInt(Label3.Caption) + 1;
Label3.Caption := IntToStr(amount);
end;


由于某种原因,它只会重复1次并停止...有人可以发现问题吗?我很累,我走了几次,我似乎看不到一个...

最佳答案

我是一个未初始化的局部变量(它包含垃圾),因此如果i> StrToInt(Edit1.Text)的比较结果是随机的。

您可能需要向表单的类中添加一个成员变量,在适当的时间进行初始化,并在onTimer事件中检查其值,例如:

type
TForm1 = class(TForm)
..
private
FTimerCount: Integer;
FMaxTimerCount: Integer;
..


procedure TForm1.Button1Click(Sender: TObject);
begin
FTimerCount := 0;
FMaxTimerCount := 20; //the timer will fire 20 times.
Timer1.Enabled := True;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
Inc(FTimerCount);
Timer1.Enabled := FTimerCount < FMaxTimerCount;
DoOtherStuff();
end;

关于delphi - Delphi Timer问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4809526/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com