绿色风's Blog
专注AutoIT(Au3)
  • 首页
  • 流●年
  • 笔●记
    • 学习随记
    • 源码示例
  • 脚●本
    • UDF(收集)
    • 工作室UDF
    • 工具●教程
    • 教程之GDI
  • 作●品
  • 下●载
  • 情怀ExcelTip
8月32015

简单获取鼠标动作UDF

作者:绿色风   发布:2015-8-3 13:34 Monday   分类:   阅读:13333次   评论:0条  
#Include <WinAPI.au3>
#include <WindowsConstants.au3>
;=====说明============================================================================
; _Waitmouse 返回用户的mouse按键码
; 用法:  脚本运行到这一行会暂停,当用户按下mouse键后继续执行,并且返回mouse按键码
; 例子:
;       #include "waitmouse.au3"
;     $mousekey = _waitmouse()
;     If $mousekey=1 Then MsgBox(0,"你按的是","左键")
#cs=mouse按键码=========================================================================
        Case $WM_LBUTTONUP     ;按下鼠标左键
            $_endmouse = 1
        Case $WM_RBUTTONDOWN   ;按下鼠标右键
            $_endmouse = 2
        Case $WM_MBUTTONDOWN   ;按下鼠标中键
            $_endmouse = 3
        Case $WM_MOUSEWHEEL    ;鼠标轮转动
            $_endmouse = 4     
#ce===================================================================================
;准备工作,安装钩子===========================================================
Global $_endmouse=""

;创建一个回调函数
$_whand = DllCallbackRegister("_Mouse_Events_Handler", "int", "int;ptr;ptr")
;返回回调函数句柄
$_whmod = _WinAPI_GetModuleHandle(0)
;安装钩子
;_WinAPI_SetWindowsHookEx(钩子类型,指针,回调函数句柄)
$_whook=_WinAPI_SetWindowsHookEx($WH_MOUSE_LL,DllCallbackGetPtr($_whand),$_whmod)

;准备完成=====================================================================

Func _waitmouse()
    While 1
    Sleep(1)
        If Not $_endmouse="" Then
            _WinAPI_UnhookWindowsHookEx($_whook)
            DllCallbackFree($_whand)
            Return $_endmouse
        EndIf
    WEnd
EndFunc

Func _Mouse_Events_Handler($wnCode, $wwParam, $wlParam)
    Switch $wwParam
        Case $WM_LBUTTONUP     ;按下鼠标左键
            $_endmouse = 1
        Case $WM_RBUTTONDOWN   ;按下鼠标右键
            $_endmouse = 2
        Case $WM_MBUTTONDOWN   ;按下鼠标中键
            $_endmouse = 3
        Case $WM_MOUSEWHEEL    ;鼠标轮转动
            $_endmouse = 4     
EndSwitch
EndFunc






本文固定链接: http://www.jianyiit.com/post-120.html

blogger
该日志由 绿色风 于2015-8-3 13:34 Monday发表在 分类下。
版权所有:《绿色风's Blog》 → 《简单获取鼠标动作UDF》;
除特别标注,本博客很多文章均为原创. 互联分享,尊重版权,转载请以链接形式标明本文地址;
本文标签:

扫描二维码,在手机上阅读
上一篇::Win10技巧 解除[搜索框]与[任务视图]按钮
下一篇:AU3 - ANSI|Unicode UTF 8(16)URL编码及逆转还原

热门文章

相关文章

  • 利用开放的OCR识别API去识别验证[20210203更新]
  • 钉钉群发消息webhook机器 人
  • Au3获取必应每日壁纸UDF
  • 重庆时时彩 数据获取
  • 返回【Tue Jun 24 08:43:05 UTC+0800 2014】 格式日期时间
取消回复

发表评论

亲,头像对么?

44 + 31 =

提交中,请稍候……


木有头像就木JJ啦!还木有头像吗?点这里申请属于你的个性Gravatar头像吧!


    站点统计
    • 运行时间: 20254 天
    • 日志总数: 365 篇
    • 评论数量: 7238 条
    • 微语数量: 6 条
    • 附件总量: 388 件
  • 逝出的青春

  • 打赏"绿色风"



      扫码关注本站公众号 可搜本站内容

  • Autoit V3 脚本交流群

      常驻群1:905774875
      常驻群2:40672266


  • 链接

    • AU3中文论坛
    • Excel资料库
    • 完美者博客
    • 顺网小哥'S Blog
    • 猛牛哥的博客
    • 网吧系统下载
  • 分类

    • 流●年(66)
    • 笔●记(0)
    • 脚●本(0)
    • 作品(21)
    • 学习随记(51)
    • 源码示例(68)
    • UDF(收集)(26)
    • 工作室UDF(30)
    • 工具●教程(62)
    • 教程之GDI(24)
Copyright © 2013 绿色风's Blog. Powered by emlog. Theme by 射雕天龙. 鄂ICP备2021011689号-1 鄂公网安备42102302000078号 sitemap