WM_COMMAND messaggio
Inviato quando l'utente seleziona una voce di comando da un menu, quando un controllo invia un messaggio di notifica alla finestra padre o quando viene convertita una sequenza di tasti di scelta rapida.
#define WM_COMMAND 0x0111
-
wParam
-
Per una descrizione di questo parametro, vedere Osservazioni.
-
lParam
-
Per una descrizione di questo parametro, vedere Osservazioni.
Se un'applicazione elabora questo messaggio, deve restituire zero.
BOOL AboutDlg (
HWND hDlg,
UINT message,
WPARAM wParam,
LPARAM lParam)
{
BOOL bRet = FALSE;
switch (message)
{
case WM_INITDIALOG:
bRet = TRUE;
break;
case WM_COMMAND:
if (wParam == IDOK ||
wParam == IDCANCEL)
{
EndDialog(hDlg, TRUE);
bRet = TRUE;
}
break;
}
return bRet;
}
Esempio tratto dagli esempi classici di Windows in GitHub.
L'uso dei parametri wParam e lParam è riepilogato qui.
Origine messaggio | wParam (parola alta) | wParam (parola bassa) | lParam |
---|---|---|---|
Menu | 0 | Identificatore di menu (IDM_*) | 0 |
Acceleratore | 1 | Identificatore dell'acceleratore (IDM_*) | 0 |
Controllo | Codice di notifica definito dal controllo | Identificatore di controllo | Handle per la finestra di controllo |
Se un'applicazione abilita un separatore di menu, il sistema invia un messaggio WM_COMMAND con la parola bassa del parametro wParam impostato su zero quando l'utente seleziona il separatore.
Se un menu viene definito con un valore MENUINFO.dwStyle di MNS_NOTIFYBYPOS, WM_MENUCOMMAND viene inviato invece di WM_COMMAND.
Le sequenze di tasti di scelta rapida che selezionano gli elementi dal menu della finestra vengono convertite in WM_SYSCOMMAND messaggi.
Se si verifica una sequenza di tasti di scelta rapida che corrisponde a una voce di menu quando la finestra proprietaria del menu viene ridotta a icona, non viene inviato alcun messaggio WM_COMMAND . Tuttavia, se si verifica una sequenza di tasti di scelta rapida che non corrisponde ad alcuno degli elementi nel menu della finestra o nel menu della finestra, viene inviato un messaggio WM_COMMAND , anche se la finestra è ridotta a icona.
Requisito | Valore |
---|---|
Client minimo supportato |
Windows 2000 Professional [solo app desktop] |
Server minimo supportato |
Windows 2000 Server [solo app desktop] |
Intestazione |
|