找回密码
 加入
搜索
查看: 1970|回复: 3

[AU3基础] 如何点击被置顶层掩盖的屏幕?

[复制链接]
发表于 2012-9-1 14:20:45 | 显示全部楼层 |阅读模式
使用笨办法, 但是屏幕老晃动, 很费劲 .  应该有更好的解决办法的.   谢谢 ......... Magnifixer.exe是屏幕放大镜 .  

$tt='中国象棋角色版'
$tt2='屏幕放大镜'

WinActivate($tt)
$Handle = WinGetHandle($tt)

While 1
  $pos = MouseGetPos()
  Sleep ( 100 )
    If _IsPressed("01", $dll) And ProcessExists ( "Magnifixer.exe" ) And  $pos[0]>4 And $pos[0]<845 And $pos[1]>5 And  $pos[1]<990 Then
                $pos = MouseGetPos()
                ; $Handle = WinGetHandle($tt)
        If WinExists('屏幕放大镜') Then WinMove('屏幕放大镜','',0,-2,865,990,1)
                WinSetState ($tt2, "", @SW_HIDE ); @SW_MINIMIZE
                ; WinActivate($tt)
         MouseClick('left', Round( ($pos[0]-30)/2+355, 0) , Round( ($pos[1]-30)/2+240, 0), 1, 0);
                ; _MouseClick($Handle, $pos[0]+8 , $pos[1]+22, 'left', 1);
                        ; MsgBox(0, "鼠标坐标 X,Y:", $pos[0] & "," & $pos[1],1)
        ;MouseMove( Round( ($pos[0]-55)/2+355, 0) , Round( ($pos[1]-5)/2+240, 0),0)
                WinSetState ($tt2, "", @SW_SHOW  ); @SW_RESTORE
        If WinExists('屏幕放大镜') Then WinMove('屏幕放大镜','',0,-2,865,990,1)
                If $pos[0]>4 And $pos[0]<845 And $pos[1]>5 And  $pos[1]<990 Then MouseMove(  $pos[0]  ,  $pos[1] , 0)
        EndIf
WEnd
DllClose($dll)
 楼主| 发表于 2012-9-1 14:24:17 | 显示全部楼层
本帖最后由 奥斯丁 于 2012-9-1 17:06 编辑

qq中的中国象棋 , 使用放大镜 , 躺着也可玩了

  是放大2倍,  _MouseClick无法有效点击
 楼主| 发表于 2012-9-23 16:02:22 | 显示全部楼层
真的没有办法吗? 可以应用钩子吗? 怎么做? 大漠插件又可以吗?  有请各位大侠啦........
发表于 2012-9-24 10:27:26 | 显示全部楼层
回复 1# 奥斯丁


有试过 _MouseClickPlus  吗?据说对最小化的窗口都可以生效。

鼠标穿透太高深了,还没研究过。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-15 16:39 , Processed in 0.074730 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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