工作-windows-消息

键盘消息是WM_KEYUP、WM_KEYDOWN.

然后我以为文本框字增加减少是键盘消息,后来才发现原来是弄错了,应该是WM_COMMAND.

百度了一下该消息:

WM_COMMAND消息
当用户点击菜单、按钮、下拉列表框等控件时候,会触发WM_COMMAND

wParam的高低位可区分该消息

Message Source wParam (high word) wParam (low word) lParam
Menu 0 Menu identifier (IDM_*) 0
Accelerator 1 Accelerator identifier (IDM_*) 0
Control Control-defined notification code Control identifier Handle to the control window

 

菜单--不说了

Accelerator

Keyboard accelerator processing model

消息被消息循环监控,如果发现这个键盘消息是Accelerator消息的话,就会把键盘消息转化为WM_COMMAND、WM_SYSCOMMAND消息发给相应的窗口。

对于WM_SYSCOMMAND 中如果是系统菜单的消息,都必须要交给DefWindowProc 来处理,并且将返回值返回给Windows ,不然你会发现不能拖动窗体、改变大小、最大最小化操作等。因为你如果不交给DefWindowProc 处理,相当于屏蔽了SC_RESTORE、SC_MOVE、SC_MAXIMIZE、SC_MINIMIZE、SC_CLOSE 等等操作了。这些命令都是通过Windows 投递WM_SYSCOMMAND 消息,在DefWindowProc 中进行处理的。

Notification Code的命名规律:
列表框:   LBN_*****   
组合框:   CBN_****
Tab框:    TBN_****
按钮:    BN_*****
Edit :    EN_*****


本文为摘录及整理,并非完全原创。如有错误,欢迎指正。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值