按键精灵怎么实现按一个键鼠标左键无限单击,再按同一个键鼠标停止单击?
按键精灵怎么实现按一个键鼠标左键无限单击,再按同一个键鼠标停止单击?我想做一个脚本,实现按不同键触发不同的子功能,现在就是纠结怎样按一次F4后鼠标无限单击,再按一次F4后...
按键精灵怎么实现按一个键鼠标左键无限单击,再按同一个键鼠标停止单击?我想做一个脚本,实现按不同键触发不同的子功能,现在就是纠结怎样按一次F4后鼠标无限单击,再按一次F4后跳出单击循环,重新进入等待按键触发子功能的那一步,下面是示例但是没解决问题的代码..
Dim run,m
run=1
m=0
Do Until Run=0
Key=WaitKey()
Select CASE Key
Case 115
Call 左键连点
End Select
Delay 10
Loop
Sub 左键连点
Do Until m = 1
Key=GetLastKey
If key = 115 Then
m = 1
Else
LeftClick 1
End If
Loop
End Sub 展开
Dim run,m
run=1
m=0
Do Until Run=0
Key=WaitKey()
Select CASE Key
Case 115
Call 左键连点
End Select
Delay 10
Loop
Sub 左键连点
Do Until m = 1
Key=GetLastKey
If key = 115 Then
m = 1
Else
LeftClick 1
End If
Loop
End Sub 展开
1个回答
展开全部
你可以用跳转啊
Rem 变量
//标记一个叫“变量”的地方
Goto 变量
//跳转到哪个叫“变量”的地方,即直接从这里跳到标记的地方
嗯,我分析了一下这段代码的意思。
如果按的键是“115”就跳到子程序,你是因为Key=115才跳到子程序的,
所以你的判断语句中Key绝对等于“115”,就直接m=1跳出循环了,
根本不会出现Key≠115的情况,也就是说鼠标绝对不会点击
所以你这个子程序根本就没有意义
找你描述的那样写应该是(115是F4的按键码吗?我就把115当作F4的按键码举例)
Do
Rem 等待按键
Key=WaitKey()
Select Case Key
Case 115
Call 左键连点()
End Select
Delay 10
Loop
Sub 左键连点()
Do While Key = 115
LeftClick 1
Key = GetLastKey()
Loop
Goto 等待按键
End Sub
当然,我只是针对这一段代码做了改动,
或许你写的某些代码可能对接下来要写的有用,我给你删了,请谅解。
Rem 变量
//标记一个叫“变量”的地方
Goto 变量
//跳转到哪个叫“变量”的地方,即直接从这里跳到标记的地方
嗯,我分析了一下这段代码的意思。
如果按的键是“115”就跳到子程序,你是因为Key=115才跳到子程序的,
所以你的判断语句中Key绝对等于“115”,就直接m=1跳出循环了,
根本不会出现Key≠115的情况,也就是说鼠标绝对不会点击
所以你这个子程序根本就没有意义
找你描述的那样写应该是(115是F4的按键码吗?我就把115当作F4的按键码举例)
Do
Rem 等待按键
Key=WaitKey()
Select Case Key
Case 115
Call 左键连点()
End Select
Delay 10
Loop
Sub 左键连点()
Do While Key = 115
LeftClick 1
Key = GetLastKey()
Loop
Goto 等待按键
End Sub
当然,我只是针对这一段代码做了改动,
或许你写的某些代码可能对接下来要写的有用,我给你删了,请谅解。
追答
嗯,你的意思是按一次F4就开始连点,再按一次就停止,重新等待按键吧。
嗯,这个很困难啊。
我想了下,或许可以用多线程:
即一边不停地点左键,一边等待按键
//==============================
// 主程序
//==============================
Do
Rem 等待按键
Key=WaitKey()
Select Case Key
Case 115
ID1 = BeginThread(左键连点)
ID2 = BeginThread(xxx)
End Select
Delay 10
Loop
//==============================
// F4
//==============================
Sub 左键连点()
Do
LeftClick 1
Delay 50
Loop
End Sub
Sub xxx()
Rem xxxKeya
Keya = WaitKey()
If Keya = 115 Then
StopThread ID1
Goto 等待按键
Else
Goto xxxKeya
End If
End Sub
说实话,我从来没用过多线程,
所以我不知道这样用对不对,你就帮我试验一下啦, 把结果告诉我。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |