按键精灵怎么随机按下键盘按键并且不重复
发布网友
发布时间:2022-05-02 21:08
我来回答
共1个回答
热心网友
时间:2022-06-30 20:28
你这里提到的“自动按下键盘这几个键”,是不是按顺序依次按下,我就当依次按下处理。
Dim RndNum(11)
Dim n, i, m, Result
'初始化数组
For i = 0 To 11
RndNum(i) = 0
Next
'生成1-12随机数
n = 0
Randomize
RndNum(0) = Int(12 * Rnd + 1)
While n < 11
Result = 0 '随机数重复标志,0表示不重复,1表示重复
Randomize
m = Int(12 * Rnd)
'For循环判断生成随机数是否和前面重复
For i = 0 To n
If m = RndNum(i) Then
Result = 1
End If
Next
If Result = 0 Then
n = n + 1
RndNum(n) = m
End If
Wend
'把随机数转换成按键
For i = 0 To 11
'MessageBox RndNum(i)
If RndNum(i) = 10 Then
RndNum(i) = 107
ElseIf RndNum(i) = 11 Then
RndNum(i) = 109
Else
RndNum(i) = RndNum(i) + 96
End If
Next
'数组RndNum存放结果,下面这一句是查看按键ASCII码的
MessageBox Join(RndNum, "|")
'依次按键
For i = 0 To 11
KeyPress RndNum(i), 1
Next
下面是用记事本测试四次的结果:
要想学好编程,首先要学算法,你这里做不出来,很明显是算法不会。
追问谢谢大佬指导,确实,我只看了几天基础教程,没看到那么深入。才刚看到数组,会用数组随机一串号码,但不会让这串号码按下键盘,您真的帮大忙了。谢谢