我来试着回答一下 // //这个符号之间的内容是注释,和我的解释。希望楼主能看懂。标题名需要你自己填的。 我会标出来告诉你怎么填。如果不能用可以试一下延迟。后面有详细的解释。
先按照你第一个的
Hwnd = Plugin.Window.Find(0, "标题名")
For 7
Call Plugin.Bkgnd.KeyPress(Hwnd, 38)
Call Plugin.Bkgnd.KeyPress(Hwnd, 40)
Call Plugin.Bkgnd.KeyPress(Hwnd, 90)
Next
第二个的
Hwnd = Plugin.Window.Find(0, "标题名")
For 7
Call Plugin.Bkgnd.KeyPress(Hwnd, 90)
Next
这一段是如何取标题名。打开按键精灵的抓抓,点句柄,点获取,把鼠标放在网页的最上面,再点获取,把当前窗口标题名复制下来,把复制的替换到上面的代码里。OK了。如果不会取标题名就往后看,有很详细的。
如果不用延迟恐怕用不了。后面除了有延迟1秒的代码之外 其他的全是详细的解释如果能用了不看也行。也许能帮你找到原因。
下面是解释可以当废话处理,能用了不需要浪费时间看
以上脚本的想法:让按键精灵通过类名和标题名帮你取你那个网页游戏的句柄,并存入Hwnd中(无论句柄怎么变都没关系,因为每次都帮你取得当前的句柄)然后进行后台操作按键。如果不会,看下面有解释,包括标题名的怎么获得。
如果不需要延迟把这一段跳过和下面的代码。(另外我很奇怪按7次UP键什么的不用延时操作么?如果需要,第一个可以把 Delay 1000 加在第三行和第四行之间,第四行和第五行之间,第五行和第六行之间。第二个加在第二行和第三行之间。也就是延迟一秒进行下一条语句。)
第一个加了延迟的
For 7
Call Plugin.Bkgnd.KeyPress(Hwnd, 38)
Delay 1000
Call Plugin.Bkgnd.KeyPress(Hwnd, 40)
Delay 1000
Call Plugin.Bkgnd.KeyPress(Hwnd, 90)
Delay 1000
Next
第二个加了延迟的
For 7
Call Plugin.Bkgnd.KeyPress(Hwnd, 90)
Delay 1000
Next
楼主说要只针对这个网页游戏。我们这样做,取那个网页游戏的句柄。
需要说明一下,句柄是系统随机分配给每个区域的。也就是你打开那个网页游戏,有一个句柄,当你关了再开又是另一个句柄了。不过没关系,下面我会让按键精灵帮你取句柄,但是还是要自己取第一次把标题名填了。免得每次自己取,而且还得填入脚本应该填的地方。如果你喜欢每次自己取那就把Hwnd = Plugin.Window.Find(类名, "标题名")去掉,把你取到的句柄替换后面所有的Hwnd并且两边加上这个符号'' ''
Hwnd = Plugin.Window.Find(类名, "标题名")
//这个语句的意思是你提供2个参数他给你找句柄。//上面括号里面的是两个参数,分别是要取句柄的那个窗口的{类名}和{标题名}也就是需要你自己填。上面这条语句的 标题名 换成你的那个网页游戏的标题名,类名填数字 0 就可以了,类名填0的话不用加任何符号。注意标题名两边加这个符号'' 是英文的符号,不是中文的标点符号。开头的Hwnd现在储存的就是你那个网页游戏的句柄,你如果不喜欢用Hwnd也可以任意换成其他的,只要后面的Hwnd也换了。再哪个后台操作就靠它了。楼主会问标题名怎么知道?下面来弄标题名。我是用句柄来得出标题名的。问题又来了,句柄还没的出来呀?没错。我们可以用其他方法来得句柄。其实下面这个方法能得到网页的当前句柄,标题名,类名,只不过不会直接填写的脚本里,需要你每次自己得到句柄自己填,很麻烦。之前不是说句柄会变么。我们现在就取当前网页的句柄。下面这样做,按键精灵里有个抓抓,在按键精灵页面的上面。就是抓图的那个工具,楼主应该能找到。打开抓抓,左面分别写着颜色,图像,鼠标,句柄。现在我们点句柄,在里面找 获取 ,获取的快捷键是F8。楼主一看就就会明白。按一下获取(这时鼠标移动到不同区域时,当前窗口句柄,当前句柄类名,当前窗口标题都会变化。但是不用管它)把鼠标放在你那个网页游戏的标题框上,(我也不知道那个叫不叫标题框,反正我就这么叫了。)也就是你能按住左键拖动窗口时的那个区域,就是网页的最上面。(也许你会发现把鼠标放在网页的不同位置句柄会不一样,这就是让你把鼠标放在标题框的原因。注意,这里句柄不一样的原因是相对网页位置不同了引起的变化,而不是我之前所说的句柄每次变的原因。)再按一下 获取。这时候鼠标再动显示的句柄,类名,标题就都不变化了(因为为了方便你记录所以定格了,所以才不变了。)把当前窗口标题复制下来。还记得上面出现过的这个么? Hwnd = Plugin.Window.Find(类名, "标题名")
把标题名三个字替换成你刚才复制的。把类名两个字替换成 0 (不是字母O 是数字0)。句柄取完了。下面说按那几个键。复制就行了没有自己填的。
Call Plugin.Bkgnd.KeyPress(Hwnd, 38)
Call Plugin.Bkgnd.KeyPress(Hwnd, 40)
Call Plugin.Bkgnd.KeyPress(Hwnd, 90)
//上面括号里面的是2个参数,其中Hwnd你的那个网页游戏的句柄,数字是你要按的UP DOWN 和Z键的虚拟码。//
如果怎么得也用不了请看这里。上面说句柄是系统随机分配给每个区域的。比如说,你打开那个网页游戏,有一个句柄,当你关了再开又是另一个句柄了。同一窗口的不同区域句柄也可能是不一样的。如果怎么得也用不了可能是句柄取错了。记得怎么用抓抓取那个标题名吧。不把鼠标放在标题栏上,放在网页其他区域取标题名,替换上去试试。希望你能满意。
Call Plugin.Web.Bind("wqm.exe")
For 7
Call Plugin.Web.Keypress(38)
Next
Delay 1000
For 7
Call Plugin.Web.Keypress(40)
Next
Delay 1000
For 7
Call Plugin.Web.Keypress(90)
Next
网页游戏 我不太懂 抱歉