有一个线程可以模拟鼠标点击,在鼠标点击之间,这个线程将冻结(Thread.Sleep())。有一些想法可以通过按下按钮来停止线程,例如 Escape
public Form1()
{
InitializeComponent();
Thread myThread = new Thread(Thr);
myThread.Start();
}
private static void Thr()
{
while (true)
{
Thread.Sleep(300);
Click(323, 454);
}
}
简单介绍一下我的拐杖代码,在表单加载中初始化了转义钩子,然后第一次单击该钩子,创建了一个 CancellationToken,并启动了一个单击的任务,第二次单击了转义符,它检查是否令牌是否存在以及是否有取消请求,如果条件为 true ,则关闭令牌和第二个线程。我非常确定我写错了,我很乐意发表评论
好吧,使用钩子的类本身
使用键盘挂钩来按下按键。
此外,要在捕获所需键后终止线程,您可以简单地使用将在您的 while 循环中使用的 bool 变量,它看起来像这样:
在捕获的关键事件中,将 cancelThread 变量设置为 true,循环将结束,线程也随之结束。
但是我给你的建议是,阅读async/await