我们就添加了一个窗格,我们还要为鼠标移动添加消息映射,使用MFC定义好的宏ON_WM_MOUSEMOVE(),直接放到消息映射里面就可以了,下面添加消息映射的处理函数void OnMouseMove(UINT nFlags, CPoint point) 通过这个函数我们可以得到两个参数:uFlags和point,这两个参数.我们在MSDN种查到对这两个参数的描述:
nFlags
Indicates whether various virtual keys are down. This parameter can be any combination of the following values:
指示哪些键被按下。这个参数可以是以下值的任意组合:
• MK_CONTROL Set if the CTRL key is down. //CTRL键
• 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 Set if the SHIFT key is down. //SHIFT键
point
Specifies the x- and y-coordinate of the cursor. These coordinates are always relative to the upper-left corner of the window.
指示光标的坐标。这个光标是相对于窗体的左上角的。
这是我们要找的参数就是point,那么这个参数是CPoint 类型的,我们再查CPoint 类型,如何查呢?一种查MSDN,另一种在工程中,右键点击CPoint这个文字,出来的右键菜单中,点击goto the definition of CPoint 。我们看到了MFC的源码,CPoint本身是一个类,但是它是继承于一个结构的(tagPOINT)。我们看它的原始定义:
typedef struct tagPOINT
{
LONG x;
LONG y;
} POINT, *PPOINT, NEAR *NPPOINT, FAR *LPPOINT;