OnCommand函数

OnCommand是响应WM_COMMAND消息的,一般是响应控件和菜单的命令消息时使用。

函数形式

LRESULT CALLBACK WndProc(HWND hWnd,UINT nMsg, WPARAM wParam, LPARAM lParam) 。

函数有2个参数WParam和LParam,这2个参数可以给我们消息处理所需要的重要信息。wParam的低字是控件ID,lParam是发送这个WM_COMMAND消息的控件的句柄。

我们可以在这个函数里面写自己的控件响应处理代码

BOOL CCheckUpdatealpha1Dlg::OnCommand(WPARAM wParam, LPARAM lParam) { // TODO: 在此添加专用代码和/或调用基类 if (!wParam) { switch(lParam) { case WM_RBUTTONDOWN: { CMenu menu,*pMenu; SetForegroundWindow(); menu.LoadMenu(IDR_MENU); pMenu=menu.GetSubMenu(0); POINT pt; GetCursorPos(&pt); pMenu->TrackPopupMenu(TPM_LEFTALIGN|TPM_BOTTOMALIGN| TPM_LEFTBUTTON|TPM_RIGHTBUTTON,pt.x,pt.y,this); break; } case WM_LBUTTONDBLCLK: { AfxGetApp()->m_pMainWnd->ShowWindow(SW_SHOW); break; } } } return CDialog::OnCommand(wParam, lParam); } 

两个case分别实现右键菜单和双机显示窗口的功能。

这样我们就响应了WM_COMMAND消息。

你可能感兴趣的:(VC++/MFC/.Net)