找回密码
 加入
搜索
查看: 9027|回复: 20

如何捕获鼠标双击事件?

  [复制链接]
发表于 2008-7-29 19:30:58 | 显示全部楼层 |阅读模式
我想在某个LABEL控件上响应鼠标双击,我该如何做?
需要用到“消息”吗?如果用到,该注册什么消息?(我查不到LABEL控件的)
如果再同时捕获CTRL键,该进一步怎么做?
发表于 2008-7-29 19:37:32 | 显示全部楼层
基本函数里没有鼠标双击事件,可以自已模拟,但有点复杂了。
发表于 2008-7-29 19:50:30 | 显示全部楼层
我也想知道,继续等待!!!1
发表于 2008-7-29 20:23:28 | 显示全部楼层
#include <GUIConstants.au3>

Const $DebugIt = 1

Global Const $WM_COMMAND = 0x0111
Global Const $STN_DBLCLK = 1

GUICreate("双击控件例子")

$test=GUICtrlCreateLabel("双击我试下",100,50,100,30)
GUISetState()
GUIRegisterMsg($WM_COMMAND, "MY_WM_COMMAND")

Do
    $msg = GUIGetMsg()

Until $msg = -3

Func MY_WM_COMMAND($hWnd, $msg, $wParam, $lParam)
    Local $nNotifyCode = BitShift($wParam,16)
    Local $nID = BitAND($wParam, 0xFFFF)
    Local $hCtrl = $lParam

    Switch $nID
        Case $test
            Switch $nNotifyCode
                Case $STN_DBLCLK
                   MsgBox(16,"警告","你丫的,还真的双击啊")
            EndSwitch
    EndSwitch

    Return $GUI_RUNDEFMSG
EndFunc   ;==>MY_WM_COMMAND




 
 楼主| 发表于 2008-7-30 09:55:10 | 显示全部楼层
谢谢叁恨居士.
发表于 2008-9-26 17:40:03 | 显示全部楼层
有点晕,看不懂上面的代码,有没有给个注释呀,新手哦!谢谢!
发表于 2009-7-12 15:32:01 | 显示全部楼层
内置常用控件的,就用 GUIRegisterMsg 来解决。
发表于 2009-8-21 16:30:56 | 显示全部楼层
很有用的源码,收藏一个
发表于 2010-1-18 22:22:36 | 显示全部楼层
不错,正规做法。
发表于 2010-4-26 22:18:03 | 显示全部楼层
看不懂
发表于 2011-6-6 01:00:06 | 显示全部楼层
回复 4# sanhen


    GUICtrlCreateButton使用这个按钮呢?可以吗,要如何做啊
发表于 2011-6-13 16:18:57 | 显示全部楼层
观摩学习,强大
发表于 2011-6-13 16:19:36 | 显示全部楼层
观摩学习,强大
发表于 2011-6-13 16:21:28 | 显示全部楼层
观摩学习,强大
发表于 2011-8-5 21:42:57 | 显示全部楼层
好东东,回头测试一下!!!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-11-17 00:26 , Processed in 0.105497 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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