MSG msg ;
消息结构体,我们可以通过点鼠标右键来查看MSG的定义。我们在WINUSER.H文件中可以看到MSG结构体的定义,如下:
typedef struct tagMSG
{
HWND hwnd;
UINT message;
WPARAM wParam;
LPARAM lParam;
DWORD time;
POINT pt;
#ifdef _MAC
DWORD lPrivate;
#endif
} MSG, *PMSG, NEAR *NPMSG, FAR *LPMSG;
我们来解释一下MSG结构体成员的功能和含义:
1)HWND hwnd;
发生消息的窗口句柄。
windows图形界面应用程序是靠消息来驱动的。我们点击鼠标,按下键盘、点击应用程序的菜单,等动作,都会被操作系统接收到。并根据当前执行的是何种操作来给MSG类型对象的相应成员赋值。
操作系统会将当前获得焦点的窗口的句柄的值赋给消息对象的hwnd。在操作系统向窗口的消息队列投递消息时,会将当前的MSG消息对象投递给窗口句柄与MSG消息对象的hwnd的值相等的那个窗口的消息队列。
2)UINT message;
Windows操作系统给每个消息一个编号,