怎樣在窗口中捕捉鼠標消息(mousemove)?

mfchuke 2003-09-14 09:10:18
急!!!
...全文
60 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
FrameSniper 2003-09-14
  • 打赏
  • 举报
回复
休想!

你写的这个消息处理器应该是窗体的一个方法!另外明白自己是否要加Inherited
mfchuke 2003-09-14
  • 打赏
  • 举报
回复
谢谢各位的回复,为什么我写的函数procedure WMMousemove(var msg:TWMMouse);message WM_MOUSEMOVE 没有效果?
lxpbuaa 2003-09-14
  • 打赏
  • 举报
回复
如果不需要捕捉鼠标在窗体的子控件(如TPanel、TButton)移动时,可以使用TForm.OnMouseMove事件。
如果要捕捉窗体和子控件上鼠标移动的消息,必须在窗体和子控件的OnMouseMove中都写上你的处理代码。一般的可以首先在TForm.OnMouseMove写处理代码,然后让所有子控件的OnMouseMove共享TForm.OnMouseMove。

在窗体中,覆盖WndProc方法和使用OnMouseMove、或者定义WM_MOUSEMOVE的消息方法都是没有区别的,都只能处理Form本身而不包括其子控件的鼠标移动消息。

FrameSniper:你以后回复问题最好不要使用那么多“!”,好不好呢?

—————————————————————————————————
宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
—————————————————————————————————
hkbarton 2003-09-14
  • 打赏
  • 举报
回复
窗口不是有onmousemove可以用吗?在里面自己完趁个就可以了啊
FrameSniper 2003-09-14
  • 打赏
  • 举报
回复
直接在窗口过程中捕捉!

覆盖WndProc方法,然后在中间添加自己的处理代码!

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧