WM_LBUTTONDOWN产生单击鼠标左键的消息
该消息包含了长参数(IParam)和字参数(wParam)
IParam
- 低字节:包含当前光标的x坐标值 x = LOWORD(IParam);
- 高字节:包含当前光标的y坐标值 y = HIWORD(IParam);
wParam
包含一整数值,用来标识鼠标键 按下的状态 通过switch - case构架来使用
类似的还有:
MK_LBUTTON 按下鼠标左键
MK_MBUTTON 按下鼠标中键
MK_RBUTTON 按下鼠标右键
MK_SHIFT 按下Shift键
MK_CONTROL 按下Control键
例如:
case WM_LBUTTONDOWN:
if(wParam & MK_SHIFT)
...
当按下鼠标左键的同时,按下了Shift键,将执行…操作。
此外,相似的消息还有:
WM_KEYDOWN按下一个非系统键时产生的消息
系统键:是指实现系统操作的组合键,例如Alt与某个功能键的组合以实现系统菜单的操作等,非系统键就是不与Alt关联的键
虚拟码
用以标识按下或释放的键
IParam
记录了按键的重复次数、扫描码、转移代码、先前键的状态等信息
相似的还有WM_KEYUP,在放开非系统键时产生的消息
虚拟键(Visual Key)-标识VK
WM_CHAR
按下一个非系统键时产生的消息
wParam 为按键的ASCⅡ码
IParam 与 WM_KEYDOWN的相同
WM_CREATE
由CreateWindow函数发出的消息
wParam 未用
IParam 包含一个指向CREATESTRUCT数据结构的指针
WM_CLOSE
关闭窗口时产生的消息
wParam / IParam 未用
WM_DESTROY
由DestoryWindow函数发出的消息
wParam / IParam 未用
WM_QUIT
由PostQuitMessage函数发出的消息
wParam 含退出代码,标识程序退出运行时的有关信息
IParam 未用
WM_PAINT
屏幕刷新时产生的消息
- 用户区移动或显示
- 程序通过滚动条滚动窗口
- 下拉式菜单关闭并需要恢复被覆盖的部分
- 用户窗口改变大小
- Windows清楚对话框等对象,并需要恢复被覆盖的地方