找回密码
 加入
搜索
查看: 1367|回复: 2

获取鼠标点击问题?疑惑

[复制链接]
发表于 2009-5-8 01:42:43 | 显示全部楼层 |阅读模式
求教高手帮忙看看..我这是那错了.. 不加移动窗口的话. 点一下就可以关闭..加移动窗口的话..要双击才能关闭..

这是我加移动窗口的:
GUIRegisterMsg($WM_NCHITTEST, "WM_NCHITTEST")

Func WM_NCHITTEST($hWnd, $iMsg, $iwParam, $ilParam)
    If ($hWnd = $MainGUI) And ($iMsg = $WM_NCHITTEST) Then Return $HTCAPTION
EndFunc   ;==>WM_NCHITTEST

问题在下面::不知道是那个环节出错了.
$MousePos = GUIGetCursorInfo($MainGUI) ;获取(相对于 GUI 窗口的)鼠标位置.
        $WinPos = WinGetPos($MainGUI) ;获取指定窗口的坐标位置和大小等属性.
;关闭窗口       
        If BitAND($MousePos[0]<=427,$MousePos[0]>=417,$MousePos[1]<=28,$MousePos[1]>=18) Then
                $ThisCtrlID = 1
        Else
                $ThisCtrlID = 0
        EndIf
       
        If $LastCtrlID <> $ThisCtrlID Then
                Switch $ThisCtrlID
                        Case 1
                                $ImageState[1] = 2
                        Case 0
                                $ImageState[1] = 1
                EndSwitch
                _SetTotalBitmap()
                $LastCtrlID = $ThisCtrlID
        EndIf


        If $MousePos[2] And $ThisCtrlID = 1 Then
                $ImageState[1] = 3
                _SetTotalBitmap()
                While $MousePos[2]
                        $MousePos = GUIGetCursorInfo($MainGUI)
            WEnd
        If BitAND($MousePos[0]<=427,$MousePos[0]>=417,$MousePos[1]<=28,$MousePos[1]>=18) Then
                        $ThisCtrlID = 1
                        exit
                Else
                        $ThisCtrlID = 0
                        $ImageState[1] = 1
                        _SetTotalBitmap()
                EndIf
        EndIf
 楼主| 发表于 2009-5-8 03:23:26 | 显示全部楼层
没高手路过么???
 楼主| 发表于 2009-5-8 17:52:10 | 显示全部楼层
晕死... 没人知道吗?
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-12-25 10:02 , Processed in 0.131291 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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