TC官方合作论坛

标题: [窗口.发送按键]对于当前窗口没有用吗 [打印本页]

作者: 混在乡下    时间: 2013-6-26 09:34
标题: [窗口.发送按键]对于当前窗口没有用吗
代码:

操作窗口=窗口.鼠标所在窗口句柄()
窗口.发送按键(操作窗口,66) //打开包裹

问题1:当操作窗口是非当前窗口时代码正常,包裹正常打开
            当操作窗口是当前窗口时,代码执行了,但是包裹没有打开

难道窗口一定要处于非当前窗口的状态吗?
问题2:
//发言
窗口.发送按键(操作窗口,13)
窗口.发送字符串(操作窗口,"12343445")
窗口.发送按键(操作窗口,13)
//鼠标点击
窗口.鼠标移动(操作窗口,1239,539)
窗口.鼠标左键单击(操作窗口,1239,539)
继续非当前窗口的代码编写发言是成功的,但是鼠标没移动,也没点击,求解惑游戏窗口大小是1280*768
-------------------------------------------------------------------------------
本来怀疑是游戏窗口的问题,然后就换了一个游戏,鼠标还是不移动,想想是不是运气不好,2个游戏都不行
于是自己写了一个测试用的窗口,遗憾的是还是不移动,

操作窗口=窗口.找到窗口("test")
        如果(操作窗口==0)
        辅助.消息框("窗口没有找到")
否则
    窗口.鼠标移动(操作窗口,1147,246)
    窗口.鼠标左键单击(操作窗口,1147,246)
    辅助.消息框(窗口.得到标题(操作窗口))
如果结束

到底怎么样才能让鼠标在后台窗口移动啊
作者: 混在乡下    时间: 2013-6-26 10:13
只有我一个人有这个问题?
作者: zhkq    时间: 2013-6-26 10:20
个人建议找窗口和 发送按键不能放在一起,这样后台就没意义了。
做一个专用的方法找窗口,
作者: 混在乡下    时间: 2013-6-26 11:02
不明白你的意思

我的意思是,这是一段后台执行的程序
但是比如我想看看任务做的好不好,就把窗口变成当前窗口了,但是变成了当前窗口以后,代码就不执行了
我以为应该我点回窗口或者覆盖窗口,代码应该无区别执行,对吧
作者: 混在乡下    时间: 2013-6-26 12:28
要崩溃了,感觉很简单的问题,困扰了我一上午
作者: 混在乡下    时间: 2013-6-26 12:42
把代码最简单化了
------------------------------------------------------------
    句柄 = 窗口.自身句柄()
    辅助.消息框(窗口.得到标题(句柄))
    窗口.鼠标移动(句柄,800,600)
------------------------------------------------------------
这样鼠标都不移动,这句话能用吗
作者: 混在乡下    时间: 2013-6-26 16:05
高人一下午都没露面吗
作者: 今非    时间: 2013-6-26 16:59
回复 6楼混在乡下的帖子

如果当前鼠标是非游戏鼠标  是看不到移动效果的
作者: 今非    时间: 2013-6-26 17:02
操作窗口=窗口.鼠标所在窗口句柄()
窗口.发送按键(操作窗口,66) //打开包裹
//----如果不能正常打开包裹 说明你获取到的窗口句柄不是游戏的窗口句柄
//----你可以把获取到的句柄加以判断,判断这个句柄的窗口名和窗口类名 是不是游戏的窗口名和窗口类名,如若不是弹一个消息框
作者: 今非    时间: 2013-6-26 17:16
窗口.鼠标移动(操作窗口,1239,539)
窗口.鼠标左键单击(操作窗口,1239,539)
//---- 继续非当前窗口的代码编写发言是成功的,但是鼠标没移动,也没点击,求解惑游戏窗口大小是1280*768
//----要不你移动到一个地方用鼠标点击来使游戏人物移动,看看效果,看看坐标是否正确
作者: 混在乡下    时间: 2013-6-26 18:26
操作窗口=窗口.鼠标所在窗口句柄()
窗口.发送按键(操作窗口,66) //打开包裹
//----如果不能正常打开包裹 说明你获取到的窗口句柄不是游戏的窗口句柄
//----你可以把获取到的句柄加以判断,判断这个句柄的窗口名和窗......
今非 发表于 2013-6-26 17:02:51
当窗口是非当前窗口,包裹正常打开,说明获取到的窗口句柄是正确的但是当窗口是当前窗口的时候,包裹不能打开,2次的区别是一个是当前窗口,一个是非当前窗口
官方大众版教学的时候,演示的时候窗口也是非当前窗口。这很可能是一个bug

作者: 混在乡下    时间: 2013-6-26 18:29
窗口.鼠标移动(操作窗口,1239,539)
窗口.鼠标左键单击(操作窗口,1239,539)
//---- 继续非当前窗口的代码编写发言是成功的,但是鼠标没移动,也没点击,求解惑游戏窗口大小是1280*768
//----要不你移动到一个地方用鼠......
今非 发表于 2013-6-26 17:16:56
感谢回答
这句代码如果只是调用的sendmessage,postmessage之类的API函数的话,按照我调查了一下午的结果,很有可能不能实现
只有用call估计才可,不过TC为了表明不是外挂,估计是不会用call的
所以大胆猜测,这两句话没有实现它的功能

作者: 混在乡下    时间: 2013-6-27 00:31
高人在哪里




欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/) Powered by Discuz! X3.1