在 VC++ 中怎样让按钮响应 WM_MOUSEMOVE ...?.....
答案:5 悬赏:80 手机版
解决时间 2021-02-26 18:01
- 提问者网友:你挡着我发光了
- 2021-02-25 19:33
在 VC++ 中怎样让按钮响应 WM_MOUSEMOVE ...?.....
最佳答案
- 五星知识达人网友:英雄的欲望
- 2021-02-25 21:12
CButton::Create
BOOL Create( LPCTSTR lpszCaption, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );
这里有一个CRect结构
按钮放在这个rect里面
如果需要
把MOUSEEVENT鼠标转换
DPtoLP(point);
然后CRect::PtInRect
PtInRect(point);
简介判定是不是在按钮范围
应该可以用
试试吧
我等你的结果
我自己就不写了
BOOL Create( LPCTSTR lpszCaption, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );
这里有一个CRect结构
按钮放在这个rect里面
如果需要
把MOUSEEVENT鼠标转换
DPtoLP(point);
然后CRect::PtInRect
PtInRect(point);
简介判定是不是在按钮范围
应该可以用
试试吧
我等你的结果
我自己就不写了
全部回答
- 1楼网友:往事隔山水
- 2021-02-26 01:09
在你要响应的类上右键,选择增加windows消息处理,在弹出的对话框选择WM_MOUSEMOVE,在点击ADD and Edit
- 2楼网友:我住北渡口
- 2021-02-25 23:45
cbutton::createboolnbsp;create(nbsp;lpctstrnbsp;lpszcaption,nbsp;dwordnbsp;dwstyle,nbsp;constnbsp;rectamp;nbsp;rect,nbsp;cwnd*nbsp;pparentwnd,nbsp;uintnbsp;nidnbsp;);这里有一个crect结构按钮放在这个rect里面如果需要把mouseevent鼠标转换dptolp(point);然后crect::ptinrectptinrect(point);简介判定是不是在按钮范围应该可以用试试吧我等你的结果我自己就不写了
- 3楼网友:怀裏藏嬌
- 2021-02-25 22:14
在类视图里,右键点击Dlg类,选择add windows message handle
或者在class wizard里面(CTRL + W),第一个标签页message maps,选择Dlg类,在 右面的message里面,往下拉
- 4楼网友:长青诗
- 2021-02-25 21:53
向导里面有的事件都可以响应。按钮响应Mouse Move好像没有什么意义吧?你再考虑一下你的逻辑,想清楚了来,要完成你的功能或许要换其他的控件。
如果你一定要这样,你只有继承系统的Button类,重写事件处理函数了。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯