Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Odesláno, když uživatel vyvolá položku příkazu z nabídky, když ovládací prvek odešle zprávu s oznámením do nadřazeného okna nebo při přeložení klávesové zkratky.
#define WM_COMMAND 0x0111
Parametry
-
wParam
-
Popis tohoto parametru naleznete v části Poznámky.
-
lParam
-
Popis tohoto parametru naleznete v části Poznámky.
Návratová hodnota
Pokud aplikace tuto zprávu zpracuje, měla by vrátit nulu.
Example
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;
}
Příklad z klasických ukázek Windows na GitHubu
Poznámky
Tady jsou shrnuty parametry wParam a lParam .
| Zdroj zpráv | wParam (vysoké slovo) | wParam (nízké slovo) | lParam |
|---|---|---|---|
| Jídelní lístek | 0 | Identifikátor nabídky (IDM_*) | 0 |
| akcelerátor | 1 | Identifikátor akcelerátoru (IDM_*) | 0 |
| Řízení | Kód oznámení definovaný ovládacími prvky | Identifikátor ovládacího prvku | Popisovač v ovládacím okně |
Jídelní lístky
Ve většině případů se jedná o zprávu, která se má naslouchat, když uživatel vyvolá příkaz v nabídce. Pokud je však nabídka definována s hodnotou MENUINFO.dwStyleMNS_NOTIFYBYPOS, WM_MENUCOMMAND se odešle místo WM_COMMAND.
Pokud aplikace povolí oddělovač nabídek, systém odešle WM_COMMAND zprávu s nízkým slovem parametru wParam nastaveným na nulu, když uživatel vybere oddělovač.
Urychlovače
Klávesové zkratky akcelerátoru, které vyberou položky z nabídky okna, se přeloží do WM_SYSCOMMAND zpráv.
Pokud dojde k stisknutí klávesy akcelerátoru, která odpovídá položce nabídky, když je okno, které vlastní nabídku, minimalizováno, nebude odeslána žádná WM_COMMAND zpráva. Pokud ale dojde k stisknutí kláves akcelerátoru, které neodpovídá žádné z položek v nabídce okna nebo v nabídce okna, odešle se zpráva WM_COMMAND , i když je okno minimalizované.
Požadavky
| Požadavek | Hodnota |
|---|---|
| Minimální podporovaný klient |
Windows 2000 Professional [jenom desktopové aplikace] |
| Minimální podporovaný server |
Windows 2000 Server [jenom desktopové aplikace] |
| Header |
|
Viz také
-
Odkaz
-
Koncepční