WM_COMMAND

WM_COMMAND 
wNotifyCode 
=  HIWORD(wParam);  //  notification code 
wID  =  LOWORD(wParam);          //  item, control, or accelerator identifier 
hwndCtl  =  (HWND) lParam;       //  handle of control 
WM_COMMAND消息报告我们用户按下的是哪个按钮(wID) 以及这个按钮的句柄(hwndCtl)和这个按钮的通知消息(有的话)
我们可以根据wID对用户的行为作出一定的反映(Message Cracker)
void  cls_OnCommand(HWND hwnd,  int  id, HWND hwndCtl, UINT codeNotify)
{
 
// do...
}
WM_COMMAND消息是在Windows应用程序中处理菜单和工具栏命令时发送的消息。它通常与窗口过程(WinProc)中的消息处理函数相关联。 要处理WM_COMMAND消息,您可以在窗口过程函数中添加相应的代码来响应该消息。通常,窗口过程函数是一个名为`WndProc`的函数,它是在窗口类中定义的。 当应用程序接收到WM_COMMAND消息时,它会携带有关触发该命令的按钮或菜单项的信息。这些信息通常包括命令ID、按钮或菜单项的标识符以及与命令关联的数据。 以下是一个简单的示例,展示了如何处理WM_COMMAND消息: ```c++ LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { switch (message) { case WM_COMMAND: { int commandID = LOWORD(wParam); // 获取命令ID // 在这里处理命令ID,例如显示与命令关联的对话框、更新UI元素等 break; } // 其他消息处理代码... } // 返回值定义了窗口如何响应消息 return DefWindowProc(hwnd, message, wParam, lParam); } ``` 在上述示例中,当接收到WM_COMMAND消息时,我们通过`LOWORD(wParam)`获取命令ID,并可以根据该ID执行相应的操作。您可以根据需要使用其他参数来获取与命令关联的数据或标识符,并根据需要更新UI元素或执行其他操作。 请注意,上述示例仅提供了一个基本的框架,您可能需要根据您的应用程序的具体需求进行适当的修改和扩展。此外,您还需要在窗口类的WNDCLASS结构中设置窗口过程函数,并使用适当的注册和创建窗口等步骤来创建您的应用程序窗口。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值