清醒时做事,糊涂时读书,大怒时睡觉,无聊时关注图老师为大家准备的精彩内容。下面为大家推荐接收用户输入,无聊中的都看过来。
【 tulaoshi.com - 编程语言 】
在视中接收鼠标输入:
鼠标消息是我们常需要处理的消息,消息分为:鼠标移动,按钮按下/松开,双击。利用ClassWizard可以轻松的添加这几种消息映射,下面分别讲解每种消息的处理。
WM_MOUSEMOVE对应的函数为OnMouseMove( UINT nFlags, CPoint point ),nFlags表明了当前一些按键的消息,你可以通过“位与”操作进行检测。
MK_CONTROL Ctrl键是否被按下 Set if the CTRL key is down.
MK_LBUTTON 鼠标左键是否被按下 Set if the left mouse button is down.
MK_MBUTTON 鼠标中间键是否被按下 Set if the middle mouse button is down.
MK_RBUTTON 鼠标右键是否被按下 Set if the right mouse button is down.
MK_SHIFT Shift键是否被按下 Set if the SHIFT key is down.
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)point表示当前鼠标的设备坐标,坐标原点对应视左上角。
WM_LBUTTONDOWN/WM_RBUTTONDOWN(鼠标左/右键按下)对应的函数为OnLButtonDown/OnRButtonDown( UINT nFlags, CPoint point )参数意义和OnMouseMove相同。
WM_LBUTTONUP/WM_RBUTTONUP(鼠标左/右键松开)对应的函数为OnLButtonUp/OnRButtonUp( UINT nFlags, CPoint point )参数意义和OnMouseMove相同。
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)WM_LBUTTONDBLCLK/WM_RBUTTONDBLCLK(鼠标左/右键双击)对应的函数为OnLButtonDblClk/OnRButtonDblClk( UINT nFlags, CPoint point )参数意义和OnMouseMove相同。
下面我用一段伪代码来讲解一下这些消息的用法:
代码的作用是用鼠标拉出一个矩形
global BOOL fDowned;//是否在拉动
global CPoint ptDown;//按下位置
global CPoint ptUp;//松开位置
OnLButtonDown(UINT nFlags, CPoint point)
{
fDowned=TRUE;
ptUp=ptDown=point;
DrawRect();
...
}
OnMouseMove(UINT nFlags, CPoint point)
{
if(fDowned)<
来源:http://www.tulaoshi.com/n/20160219/1600623.html