按键精灵求助:一个简单的问题

求源代码,希望模拟的动作是:当我持续按下一个按键时,系统自动匹配到另外一个按键,同样也是持续按着,当我抬起这个按键时,匹配的按键也同样抬起
(说通俗点,有的游戏控制方向是右边键盘的上下左右按键,我想把它模拟到ASWD上,因为方向键是持续按下游戏中的人物才会走动,单击无法达成,所以想了解怎样才能模拟这种操作)
非常感谢

第1个回答  2012-12-30
楼上是后台的,不知道你看不看得懂
第2个回答  2012-12-26
这里就不给你解释代码的意思了,! 不懂的话百度Hi我。
Declare Function GetAsyncKeyState Lib "user32" Alias "GetAsyncKeyState" (ByVal vKey As Long) As Integer
Do
x = WaitKey

If x = 87 Then
a = GetAsyncKeyState(87)
Call w()
ElseIf x = 83 Then
a = GetAsyncKeyState(83)
Call s()
ElseIf x = 65 Then
a = GetAsyncKeyState(65)
Call a()
ElseIf x = 68 Then
a = GetAsyncKeyState(68)
Call d()
End If
Loop
Sub w()
While a <> 0
a = GetAsyncKeyState(87)
KeyPress "V", 1 //V你需要按的那个键位。
Wend
End Sub
Sub s()
While a <> 0
a = GetAsyncKeyState(83)
KeyPress "V", 1 //V你需要按的那个键位。
Wend
End Sub
Sub a()
While a <> 0
a = GetAsyncKeyState(65)
KeyPress "V", 1 //V你需要按的那个键位。
Wend
End Sub
Sub d()
While a <> 0
a = GetAsyncKeyState(68)
KeyPress "V", 1 //V你需要按的那个键位。
Wend
End Sub本回答被网友采纳

按键精灵代码求助,我初学的 ,问题很简单
怎么说呢。。你找npc是通过鼠标代码,问题是,你鼠标不动位置,你的鼠标代码能自动变化吗?建议你用其他特征找,比如找图,找色。用鼠标特征码也可以,估计要有鼠标的位置变化才可以。因为你没说清楚具体情况,只是猜测。

按键精灵if命令求助
首先你这个有点说不通呀。首先,让计算机接受一个按键,有2个动作,1是按下,2是弹起 如果按下J键,则连续按键J,你所说的按键,应该是连续按J键吧, 但是按J,又包括多个按下和弹起 然后你又要弹起J的时候,停止按 这样最多就会按一下。

按键精灵 按钮调用函数问题求助
Global ss = 2Function sa() MessageBox sEnd FunctionEvent Form1.Button1.Click s = 2 Call sa()End Eventqui界面最好用ini文件存放数据变量,或者定义全局变量(Global)至于楼下的可以返回2 是因为他启动过脚本后才点击按钮,当你启动之后 就已经执行了s=2了 再点按钮 自然就是是s=...

求助,按键精灵录制脚本之后,运行起来总跑偏
回答:大至了解了你的意思.鼠标点的坐标是屏幕的坐标,这个坐标和游戏地图的坐标不是对应的.如屏幕坐标(0,0),并不固定对应游戏地图上的哪个坐标,人走动了,这个0,0就不是原来的游戏那个地点的坐标了.录制的就是这样,不是简单修改能够解决的.坦白说,无解.

按键精灵语句里有个单击左键执行不了,求助
其实有时候我也遇到这样的问题,其实不是没点击!而是移动太快!那个坐标点没有识别到你已经移动到了! 解决办法就是 在这个坐标点旁边选取一个坐标,先移动到这个坐标上 延迟100然后再移动到目标坐标位置,基本就可以解决了!打个比方:我们手动移动都是一点一点的滑动过去,但是代码是直接瞬间移动,所以有...

按键精灵求助 为什么循环后面的命令不执行
1、楼主的意思是长按不放F1和2两个键。事实上我们的电脑是做不到2个键同时长按的。2个键长按的结果是电脑只能执行后一个键的长按。2、按键精灵里keyDown的作用不是长按,而是为了组合键。楼主可以在用记事本测试KeyDown "2", 1的结果。它只是按一次2就结束了。按键精灵里没有长按的命令。

求助各位大神,关于按键精灵的问题。 如何让按键精灵输出一个 指定的数...
指定数 = 7For i = 0 To 9 TracePrint "这里输出所有个位是指定数的数:"& i*10+指定数Nexti = 1Do 倍数 = 指定数*i If 倍数 > 100 Then Exit Do If Int(Right(倍数, 1)) = 指定数 Then Else TracePrint "这里输出所有指定数的倍数:" & 倍数 End If i=...

高手求助如何用按键精灵自动打怪。详细讲下
高手求助如何用按键精灵自动打怪。详细讲下 按键精灵最简单的用法就是:开启按键精灵,选择左上角的”增加”,那是做一个新指令码时用的. 进入指令码编辑器后,先看你的顶上,选一个指令码名字(这个名字就会成为指令码在硬碟上的档名),选好启动热键和中止热键. 然后你看到左边有一个”滑鼠动作”了吗?在这个里面...

按键精灵7.0使用求助
你可怜先录制用鼠标点一下就OK了,然后在按键精灵里面的脚本调成每秒20下就OK

按键精灵后台脚本坐标问题,求助。。。
后台操作,是以窗口客户区(不包括窗口边框)左上角为原点的,后台操作是窗口坐标,窗口坐标和屏幕坐标不一样,窗口坐标与窗口在屏幕的位置无关,也就是说,你把窗口移动到别处,代码 GetColor = Plugin.Bkgnd.GetPixelColor(Hwnd, 478, 500)If GetColor = "0000CC" Then MessageBox GetColor End ...

相似回答