TC官方合作论坛

 找回密码
 立即注册
查看: 3768|回复: 14
打印 上一主题 下一主题

[已解决] 求教如何获得活动窗口的相对坐标?

[复制链接]
跳转到指定楼层
楼主
发表于 2012-7-18 11:50:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上加入TC

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
脚本需要在一个经常活动的窗口内点击多个位置的按钮。
按键精灵获得活动窗口的相对坐标可以用数组,看了一下tc没有这方面的教程,请教一下大师们如何实现相对坐标的获取呢?
按键的代码如下:
Hwnd = Plugin.Window.Find(1, " TEST PROGRAM ")
Call Plugin.Window.Active(Hwnd)
sRect = Plugin.Window.GetClientRect(Hwnd)
MyArry=Split(sRect,"|")
Ux = CLng(MyArry(0))
Uy = CLng(MyArry(1))

非常感谢!!!
回复

使用道具 举报

沙发
发表于 2012-7-18 12:08:35 | 只看该作者
表示没学过按键,看不懂按键命令

调用大漠插件一绑定窗口,神马都是相对坐标了
回复 支持 反对

使用道具 举报

推荐
 楼主| 发表于 2012-7-18 16:07:08 | 只看该作者
搞了一下午基本明白了,编的脚本如下:
整型 窗口句柄,rCX,rCY,返回宽,返回高
窗口句柄=窗口.找到窗口("test.bmp - ACDSee v3.1")
窗口.显示(窗口句柄)
窗口.激活(窗口句柄)
窗口.获取客户区大小(窗口句柄,rCX,rCY,返回宽,返回高)
鼠标.移动(rCX+310,rCY+97)
辅助.等待(2000)
鼠标.右键单击(1)
鼠标.移动(rCX+62,rCY+521)
辅助.等待(2000)
鼠标.右键单击(1)
鼠标.移动(rCX+296,rCY+714)
辅助.等待(2000)
鼠标.右键单击(1)
鼠标.移动(rCX+183,rCY+499)
辅助.等待(2000)
鼠标.右键单击(1)
鼠标.移动(rCX+92,rCY+710)
辅助.等待(2000)
鼠标.右键单击(1)
回复 支持 1 反对 0

使用道具 举报

板凳
发表于 2012-7-18 12:43:14 | 只看该作者
酱油
回复 支持 反对

使用道具 举报

地板
 楼主| 发表于 2012-7-18 13:03:12 | 只看该作者
回复 2楼陌上青衣。的帖子

非常感谢!马上研究大漠插件去!
回复 支持 反对

使用道具 举报

5#
发表于 2012-7-18 13:24:48 | 只看该作者
路过,看看
回复 支持 反对

使用道具 举报

6#
发表于 2012-7-18 13:48:29 | 只看该作者
TC没有游戏窗口的相对坐标?都是以屏幕坐标为准的吗?
回复 支持 反对

使用道具 举报

7#
 楼主| 发表于 2012-7-18 14:01:46 | 只看该作者
回复 6楼feng123144的帖子

肯定有方法实现相对坐标,只是没有看到相应的脚本。为了简单的点击按钮就调用大漠有点大材小用了。
回复 支持 反对

使用道具 举报

8#
 楼主| 发表于 2012-7-18 14:28:47 | 只看该作者
整型 窗口句柄
窗口句柄=窗口.找到窗口("TEST PROGRAM")
窗口.显示(窗口句柄)
整型 x坐标,y坐标
窗口.获取位置(窗口句柄,x坐标,y坐标)
鼠标.移动(100+x坐标,200+y坐标)
鼠标.右键单击(1)
请教大神,这段脚本能实现活动窗口内点击按钮的效果吗?
关键是鼠标移动的语句可以这样用吗?
回复 支持 反对

使用道具 举报

9#
发表于 2012-7-18 14:36:31 | 只看该作者
回复 8楼flyinsk的帖子

应该可以,鼠标.移动(x+100,y+200)
回复 支持 反对

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18043773号

GMT+8, 2025-10-5 12:05 , Processed in 0.138479 second(s), 25 queries .

Powered by 海安天坑软件科技有限公司

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表