仅供参考:
WM_COMMAND
TheWM_COMMANDmessageissentwhentheuserselectsacommanditemfromamenu,whenacontrolsendsanotificationmessagetoitsparentwindow,orwhenanacceleratorkeystrokeistranslated.
WM_COMMAND
wNotifyCode=HIWORD(wParam);//notificationcode
wID=LOWORD(wParam);//item,control,oracceleratoridentifier
hwndCtl=(HWND)lParam;//handleofcontrol
Parameters
wNotifyCode
Valueofthehigh-orderwordofwParam.Specifiesthenotificationcodeifthemessageisfromacontrol.Ifthemessageisfromanaccelerator,thisparameteris1.Ifthemessageisfromamenu,thisparameteris0.
wID
Valueofthelow-orderwordofwParam.Specifiestheidentifierofthemenuitem,control,oraccelerator.
hwndCtl
ValueoflParam.Handletothecontrolsendingthemessageifthemessageisfromacontrol.Otherwise,thisparameterisNULL.
ReturnValues
Ifanapplicationprocessesthismessage,itshouldreturnzero.
Remarks
AcceleratorkeystrokesthatselectitemsfromthewindowmenuaretranslatedintoWM_SYSCOMMANDmessages.
Ifanacceleratorkeystrokeoccursthatcorrespondstoamenuitemwhenthewindowthatownsthemenuisminimized,noWM_COMMANDmessageissent.However,ifanacceleratorkeystrokeoccursthatdoesnotmatchanyoftheitemsinthewindow'smenuorinthewindowmenu,aWM_COMMANDmessageissent,evenifthewindowisminimized.
Ifanapplicationenablesamenuseparator,thesystemsendsaWM_COMMANDmessagewiththelow-wordofthewParamparametersettozerowhentheuserselectstheseparator.
QuickInfo
WindowsNT:Requiresversion3.1orlater.
Windows:RequiresWindows95orlater.
WindowsCE:Requiresversion1.0orlater.
Header:Declaredinwinuser.h.
SeeAlso
EditControlsOverview,EditControlMessages,WM_SYSCOMMAND
|