我做了一个按键精灵脚本,只能在按键精灵窗口内有效,在其它窗口内则无效是哪里出了问题

我做了一个按键精灵脚本,只能在按键精灵窗口内有效,在其它窗口内则无效是哪里出了问题,也就是说只有在按键精灵主窗口处在最前时才有效,当最小化按键精灵主窗口或让其置后则运行脚... 我做了一个按键精灵脚本,只能在按键精灵窗口内有效,在其它窗口内则无效是哪里出了问题,也就是说只有在按键精灵主窗口处在最前时才有效,当最小化按键精灵主窗口或让其置后则运行脚本时没有反应,谁能告诉我是哪里出了问题
答非所问,不是前台后台的问题,而是除了在按键精灵自己的窗口里能正常运行外,其它任何窗口里都不能正常运行(根本就没反应),哪怕那个窗口是最前的,,也就是说只要按键精灵自己的窗口不在最前就无法正常运行(安装按键精灵又不是对它自己进行操作,而是能对其它程序窗口进行操作,而现在在其它窗口没反应那还有毛用,晕)
展开
 我来答
2531521
2011-01-03
知道答主
回答量:19
采纳率:0%
帮助的人:8万
展开全部
命令] 按键精灵后台简明教程(后台找色,后台鼠标点击等)
按键精灵后台简明教程(后台找色,后台鼠标点击等)
使用按键精灵有一段时间了,从前台到后台看了很多帖子,加上自己的勤奋算是成功了,自己制作了一个练级的脚本,经一月余的使用完全正常,按键精灵升级至7.0后,很多需要从论坛下载才能使用的插件都集成了,这对于新手来说是个福音,我才开始使用时,为了找这些插件费了很多周折,现在的新手真是幸福啊!!呵呵,废话少说,下面把我的一些经验和教训在这里与大家分享,希望对“想后台”的朋友有所帮助。
1、游戏句柄
后台的意思就是当窗口被遮盖或移开的时候,仍能够正常的执行脚本动作,所以必须先找到该游戏的窗口句柄,这样可以保证我们编辑的脚本语句有正确的使用方向,获取窗口句柄的方法有很多,我一般使用以下的方法:
Dim hwnd
Plugin hwnd=Window.MousePoint()
Plugin是调用插件命令,凡是调用插件都需要使用这个命令,hwnd就是得到的句柄,Window是插件的名称MousePoint()返回鼠标所在的窗口的句柄
关于窗口这里需要多说几句,以网页游戏为例,鼠标放在标题栏上和放在游戏窗口所得到的句柄是不一样的,游戏窗口是IE的一个子窗口,因此在运行脚本前,将你的鼠标放在游戏窗口的区域内再运行脚本。
得到句柄费函数很多,有兴趣的自己去试试看,不过知道一个就足够了。
2、模拟动作
得到窗口句柄后,你就可以向这个窗口模拟需要的动作了,在这里要用到按键精灵7的插件(既然已经有7了以前的插件就不作介绍了),模拟动作的函数有如下几个
-模拟鼠标点击
Plugin Bkgnd.LeftClick(句柄,横坐标,纵坐标) //模拟鼠标左键点击
Plugin Bkgnd.RightClick(句柄,横坐标,纵坐标) //模拟鼠标右键点击
其中的句柄就是上面我们已经得到的句柄,这里的横坐标和纵坐标是针对游戏窗口,而不是针对屏幕的(看晕了吧^_^关于这一点足足困扰了我一个礼拜的时间才弄明白)。
屏幕坐标,是以屏幕左上角为基点(0,0),右下角的坐标是和屏幕分辨率有关的,而窗口坐标,不是在屏幕的左上角,例如word中的编辑窗口的0,0位置是在工具栏下面的,看不懂也没关系,你只要记住下面的方法就行了,首先在得到窗口句柄后加上如下的代码:
Plugin s = Window.GetClientRect(hwnd)
XYArray = Split(s, "|", -1, 1)
dx = XYArray(0)
dy = XYarray(1)
其次,在横坐标和纵坐标的后面都分别减去dx和dy就行了,为什么!!不用去管他,反正这样做不会错,举例说明
例如你抓点得到的横坐标是x,纵坐标是y,那么模拟鼠标左键点击的语句应该是这样的:
Plugin Bkgnd.LeftClick(句柄x-dx,y-dy)
-模拟键盘动作
Plugin Bkgnd.KeyPress(句柄,按键码) //模拟键盘动作
这里的按键码可以很容易的在按键精灵中查到,包括组合键
-输入字符串
Plugin Window.SendString(句柄,字符串)
这个函数在登陆和喊话时是非常有用的,其中的字符串可以是字符串变量
3、后台找色
后台脚本尽量少用找色语句,否则你的游戏将“卡巴死机”,即使少用也会出现很多的“马赛克”幸运的是不影响找色功能,即使游戏图像已经乱七八糟,既然是要后台操作,难看就难看吧^_^。
Plugin c1=BkgndColor.GetPixelColor(hwnd,631-dx,121-dy)
强烈建议用这个函数,至于什么区域找色,区域照图之类,如果你的电脑速度足够快再去尝试吧。
找色是有技巧的,一定要找到一个不同画面分别对应不同颜色的点,当然只有一个点是不可靠的。我的思路是,找到几个点的颜色值记录下来,再根据这几个点的不同组合来决定脚本的走向,采取这种方法后,我在游戏时已经基本可以看到大体的画面了。
参考资料:http://www.vrbrothers.com/cn/qmacro/qkbase/Home/Detail/8638c3ad-824d-460f-a7a4-a1ff6f227f22
tjjhhr
2011-01-06 · 超过29用户采纳过TA的回答
知道答主
回答量:86
采纳率:0%
帮助的人:45.1万
展开全部
1.你的按键精灵程序有问题,用的是免费的。
重新下载个绿色版本的,即可解决!

2.你的按键精灵 脚本 处于编辑状态,
点击 左上 “保存退出”后最小化

3.按快捷键没有反应。
选中 该脚本 点击 修改 ,再点 “保存退出”

以上三种情况 如不能解决,估计就是你的程序写的不对了~~
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式