打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
鼠标离开窗口或控件及悬停的消息(源码)

勇芳

鼠标离开窗口或控件及悬停的消息(源码)

这功能很常用,很多人自己用定时器做。

其实这是微软WIN编程里本来就有的功能,只是很少被人提及,很多人不知道而以。

下面编程环境:FireFly for FreeBASIC   (其它可以稍加改改即可)

  1. Function FORM2_CUSTOM ( _
  2.                       hWndForm      as HWnd, _      ' 窗体句柄
  3.                       wMsg          as UInteger,  _  ' 消息类型
  4.                       wParam        as WPARAM, _    ' 第一个消息参数
  5.                       lParam        as LPARAM   _   ' 第二个消息参数
  6.                       ) as Long
  7.  
  8. Dim entTrack as tagTRACKMOUSEEVENT
  9. Select Case  wMsg
  10.     Case WM_MOUSELEAVE   '鼠标出窗口
  11.          Print "鼠标出窗口"   
  12.     Case WM_MOUSEHOVER   '鼠标悬停
  13.         Print "悬停"
  14.     Case WM_NCHITTEST        '启用鼠标检查 
  15.         entTrack.cbSize=SizeOf(tagTRACKMOUSEEVENT)
  16.         entTrack.dwFlags=TME_LEAVE Or TME_HOVER '移出  悬停 标志
  17.         entTrack.hwndTrack=hWndForm '被检查窗口或控件
  18.         entTrack.dwHoverTime =300  '悬停时间 ms
  19.         TrackMouseEvent @entTrack  
  20. End Select
  21. End Function

如果是VB,那需要

1,声明API

2,子类化窗口

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
WM_CTLCOLOR和OnCtlColor消息的用法
vb教程之操作VB中的无边框窗体
ucgui 输入消息传递过程
WM
Window 消息大全使用详解
Windows消息传递机制详解
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服