Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1809|回复: 0
打印 上一主题 下一主题

wParam和lParam消息

[复制链接]

10

主题

16

帖子

66

积分

认证用户组

Rank: 5Rank: 5

积分
66
跳转到指定楼层
楼主
发表于 2017-5-21 12:04:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
wParamlParam消息
1 WM_PAINT消息,LOWORD(lParam)是客户区的宽,HIWORD(lParam)是客户区的高
2 滚动条WM_VSCROLLWM_HSCROLL消息,LOWORD(wParam)指出了鼠标对滚动条的操作。比如上、下、左、右、翻页、移动等。
3 击键消息,有WM_SYSKEYDOWNWM_SYSKEYUPWM_KEYUPWM_KEYDOWN,其中wParam是虚拟键代码,lParam是包含属于击键的其他信息。lParam消息参数分为6个域,有重复计数、环境代码、键的先前状态等。
4 字符消息WM_CHARWM_DEADCHARWM_SYSCHARWM_SYSDEADCHARlParam消息参数跟击键消息的lParam消息参数内容相同,wParam参数是ANSIUnicode字符代码
5 客户区鼠标消息WM_LBUTTONDOWNWM_LBUTTONUPWM_RBUTTONDOWNWM_RBUTTONUPWM_MBUTTONDOWNWM_MBUTTONUP,lParam参数的低位是鼠标的客户区x坐标,高位是客户区y坐标。wParam参数是指示鼠标键及ShiftCtrl键的状态。wParam&MK_SHIFTMK_CTRL,如果返回TRUE就意味着有按下ShiftCtrl键。
6 非客户区消息,wParam参数指明移动或者单击鼠标键的非客户区位置,以HT开头,lParam参数低位指出了鼠标所在屏幕坐标的x坐标,高位指出了鼠标所在屏幕坐标的y坐标。
7 鼠标轮滚动消息,WM_MOUSEWHEEL消息,lParam将获得鼠标的屏幕位置(坐标),wParam参数的低位表明鼠标键和ShiftCtrl键的状态。wParam高位有一个“delta”值,该值可正可负,指出了滚轮导致屏幕滚动几行,120表示向上3行。
8 计时器消息WM_TIMERwParam参数等于计时器的ID值,lParam0
9 按钮子窗口的WM_COMMAND消息,wParam参数的低位是子窗口ID,高位是通知码, lParam参数是子窗口句柄。
10 焦点消息,对于正在失去焦点的窗口,会收到WM_KILLFOCUS消息,其wParam参数是即将接收输入焦点的窗口的句柄。对于即将获取焦点的窗口,会收到WM_SETFOCUS消息,其wParam参数是正在失去焦点的窗口的句柄。
11 编辑控制的WM_COMMAND消息,wParam参数的低位是子窗口ID,高位是通知码, lParam参数是子窗口句柄。
12 列表框的WM_COMMAND消息,wParam参数的低位是子窗口ID,高位是通知码, lParam参数是子窗口句柄。
13 菜单消息1WM_INITMENUwParam是主菜单句柄,lParam0.
14 菜单消息2WM_MENUSELECT,菜单跟踪消息,指针移到菜单的某一些,就会发送这个消息给窗口过程,其wParam参数的低位是选中项菜单的ID或者弹出式菜单的句柄,高位是选择标识,lParam参数是包含选中项的菜单句柄。
15 菜单消息3WM_INITMENUPOPUP,准备显示一个弹出式菜单时产生的消息,wParam参数是弹出式菜单的句柄,lParam的低位是弹出式菜单的索引,如果该菜单是系统菜单,那么高位是1,否则为0。
16 菜单消息4WM_COMMAND,选中菜单后产生,wParam低位是击中菜单的ID,高位是0lParam参数也是0。
17 菜单消息5WM_SYSCOMMAND,表示用户从系统菜单中选择一个启用的菜单项,其wParam参数是菜单的ID lParam0.如果该消息是由按鼠标产生的,那么lParam参数是鼠标的屏幕坐标。
18 加速键消息,WM_COMMAND消息,wParam低位是加速键ID,高位是1 lParam0.
消息
说明
wParam
lParam
WM_PAINT
低位是客户区的宽
高位是客户区的高
WM_VSCROLL
WM_HSCROLL
窗口滚动条消息
低位指出了鼠标对滚动条的操作
击键消息
虚拟键代码
分为6个域,有重复计数、环境代码、键的先前状态等
字符消息
ANSIUnicode字符代码
分为6个域,有重复计数、环境代码、键的先前状态等
客户区鼠标消息
指示鼠标键及ShiftCtrl键的状态
鼠标的客户区坐标
非客户区鼠标消息
指明移动或者单击鼠标键的非客户区位置,以HT开头
鼠标的屏幕坐标
WM_MOUSEWHEEL
鼠标轮滚动消息
低位表明鼠标键和ShiftCtrl键的状态
高位指出了滚轮导致屏幕滚动几行
鼠标的屏幕位置
WM_TIMER
计时器消息
计时器的ID
0
WM_COMMAND
按钮
低位是子窗口ID,高位是通知码
子窗口句柄
WM_SETFOCUS
焦点消息
正在失去焦点的窗口的句柄
WM_KILLFOCUS
焦点消息
即将接收输入焦点的窗口的句柄
WM_COMMAND
编辑控制
低位是子窗口ID,高位是通知码
子窗口句柄
WM_COMMAND
列表框
低位是子窗口ID,高位是通知码
子窗口句柄
WM_INITMENU
主菜单句柄
0
WM_MENUSELECT
菜单跟踪消息
低位是选中项菜单的ID或者弹出式菜单的句柄,高位是选择标识
选中项的菜单句柄
WM_INITMENUPOPUP
准备显示一个弹出式菜单时产生
弹出式菜单的句柄
低位是弹出式菜单的索引,如果该菜单是系统菜单,那么高位是1,否则为0.
WM_COMMAND
选中菜单后产生
低位是击中菜单的ID
高位是0
0
WM_SYSCOMMAND
用户从系统菜单中选择一个启用的菜单项
菜单的ID
0如果该消息是由按鼠标产生的,那么是鼠标的屏幕坐标。
WM_COMMAND
加速键消息
低位是加速键ID
高位是1
0

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|firemail ( 粤ICP备15085507号-1 )

GMT+8, 2024-5-4 00:53 , Processed in 0.059121 second(s), 19 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表