WM_APPCOMMAND-Nachricht

Sendet eine Benachrichtigung an ein Fenster, dass Benutzer*innen ein Anwendungsbefehlsereignis generiert haben, z. B. indem sie mit der Maus auf eine Anwendungsbefehlsschaltfläche klicken oder auf der Tastatur eine Anwendungsbefehlstaste drücken.

#define WM_APPCOMMAND                   0x0319

Parameter

wParam

Ein Handle für das Fenster, in dem der Benutzer auf die Schaltfläche geklickt oder die Taste gedrückt hat. Dies kann ein untergeordnetes Fenster des Fensters sein, das die Nachricht empfängt. Weitere Informationen zur Verarbeitung dieser Nachricht finden Sie im Abschnitt „Bemerkungen“.

lParam

Verwenden Sie den folgenden Code, um die Informationen im Parameter IParam abzurufen.

cmd  = GET_APPCOMMAND_LPARAM(lParam);

uDevice = GET_DEVICE_LPARAM(lParam);

dwKeys = GET_KEYSTATE_LPARAM(lParam);

Der Anwendungsbefehl ist cmd. Dies kann einer der folgenden Werte sein.

Wert Bedeutung
APPCOMMAND_BASS_BOOST
20
Schalten Sie den Bass-Boost ein und aus.
APPCOMMAND_BASS_DOWN
19
Verringern Sie den Bass.
APPCOMMAND_BASS_UP
21
Erhöhen Sie den Bass.
APPCOMMAND_BROWSER_BACKWARD
1
Navigieren Sie rückwärts.
APPCOMMAND_BROWSER_FAVORITES
6
Öffnen Sie die Favoriten.
APPCOMMAND_BROWSER_FORWARD
2
Navigieren Sie vorwärts.
APPCOMMAND_BROWSER_HOME
7
Navigieren Sie zum Start.
APPCOMMAND_BROWSER_REFRESH
3
Aktualisieren Sie die Seite.
APPCOMMAND_BROWSER_SEARCH
5
Öffnen Sie die Suche.
APPCOMMAND_BROWSER_STOP
4
Beenden Sie den Download.
APPCOMMAND_CLOSE
31
Schließen Sie das Fenster (nicht die Anwendung).
APPCOMMAND_COPY
36
Kopieren Sie die Auswahl.
APPCOMMAND_CORRECTION_LIST
45
Ruft die Korrekturliste auf, wenn ein Wort bei der Spracheingabe falsch erkannt wird.
APPCOMMAND_CUT
37
Schneiden Sie die Auswahl aus.
APPCOMMAND_DICTATE_OR_COMMAND_CONTROL_TOGGLE
43
Schaltet zwischen zwei Modi der Spracheingabe um: Diktieren und Befehl/Steuerung (Befehle für eine Anwendung oder den Zugriff auf Menüs).
APPCOMMAND_FIND
28
Öffnen Sie das Dialogfeld Suchen.
APPCOMMAND_FORWARD_MAIL
40
Leiten Sie eine E-Mail-Nachricht weiter.
APPCOMMAND_HELP
27
Öffnen Sie das Dialogfeld Hilfe.
APPCOMMAND_LAUNCH_APP1
17
Starten Sie App1.
APPCOMMAND_LAUNCH_APP2
18
Starten Sie App2.
APPCOMMAND_LAUNCH_MAIL
15
Öffnen Sie die E-Mails.
APPCOMMAND_LAUNCH_MEDIA_SELECT
16
Wechseln Sie zum Medienauswahlmodus.
APPCOMMAND_MEDIA_CHANNEL_DOWN
52
Verringern Sie den Kanalwert, z. B. für einen TV- oder Radiotuner.
APPCOMMAND_MEDIA_CHANNEL_UP
51
Erhöhen Sie den Kanalwert, z. B. für einen TV- oder Radiotuner.
APPCOMMAND_MEDIA_FAST_FORWARD
49
Erhöhen Sie die Geschwindigkeit der Streamwiedergabe. Dies kann auf viele Arten implementiert werden, z. B. durch eine feste Geschwindigkeit oder das Umschalten durch eine Reihe von steigenden Geschwindigkeiten.
APPCOMMAND_MEDIA_NEXTTRACK
11
Wechseln Sie zum nächsten Titel.
APPCOMMAND_MEDIA_PAUSE
47
Anhalten. Wenn sie bereits angehalten wurde, führen Sie keine weiteren Maßnahmen aus. Dies ist ein direkter PAUSE-Befehl ohne Status. Wenn separate Wiedergabe- und Pausentasten vorhanden sind, sollten Anwendungen sowohl für diesen Befehl als auch für APPCOMMAND_MEDIA_PLAY_PAUSE Maßnahmen ergreifen.
APPCOMMAND_MEDIA_PLAY
46
Beginnen Sie mit der Wiedergabe an der aktuellen Position. Wenn sie bereits angehalten wurde, wird sie fortgesetzt. Dies ist ein direkter WIEDERGABE-Befehl ohne Status. Wenn separate Wiedergabe- und Pause-Tasten vorhanden sind, sollten Anwendungen sowohl für diesen Befehl als auch für APPCOMMAND_MEDIA_PLAY_PAUSE Maßnahmen ergreifen.
APPCOMMAND_MEDIA_PLAY_PAUSE
14
Wiedergabe oder Anhalten der Wiedergabe. Wenn separate Wiedergabe- und Pause-Tasten vorhanden sind, sollten Anwendungen sowohl für diesen Befehl als auch für APPCOMMAND_MEDIA_PLAY und APPCOMMAND_MEDIA_PAUSE Maßnahmen ergreifen.
APPCOMMAND_MEDIA_PREVIOUSTRACK
12
Wechseln Sie zum vorherigen Frame.
APPCOMMAND_MEDIA_RECORD
48
Beginnen Sie mit der Aufzeichnung des aktuellen Streams.
APPCOMMAND_MEDIA_REWIND
50
Gehen Sie in einem Stream mit höherer Geschwindigkeit rückwärts. Dies kann auf viele Arten implementiert werden, z. B. durch eine feste Geschwindigkeit oder das Umschalten durch eine Reihe von steigenden Geschwindigkeiten.
APPCOMMAND_MEDIA_STOP
13
Beenden Sie die Wiedergabe.
APPCOMMAND_MIC_ON_OFF_TOGGLE
44
Schalten Sie das Mikrofon um.
APPCOMMAND_MICROPHONE_VOLUME_DOWN
25
Verringern Sie die Mikrofonlautstärke.
APPCOMMAND_MICROPHONE_VOLUME_MUTE
24
Schalten Sie das Mikrofon stumm.
APPCOMMAND_MICROPHONE_VOLUME_UP
26
Erhöhen Sie die Mikrofonlautstärke.
APPCOMMAND_NEW
29
Erstellen Sie ein neues Fenster.
APPCOMMAND_OPEN
30
Öffnen Sie ein Fenster.
APPCOMMAND_PASTE
38
Einfügen
APPCOMMAND_PRINT
33
Drucken Sie das aktuelle Dokument.
APPCOMMAND_REDO
35
Wiederholen Sie die letzte Aktion.
APPCOMMAND_REPLY_TO_MAIL
39
Antworten Sie auf eine E-Mail-Nachricht.
APPCOMMAND_SAVE
32
Speichern Sie das aktuelle Dokument.
APPCOMMAND_SEND_MAIL
41
Senden Sie eine E-Mail-Nachricht.
APPCOMMAND_SPELL_CHECK
42
Initiieren Sie eine Rechtschreibprüfung.
APPCOMMAND_TREBLE_DOWN
22
Verringern Sie die Höhen.
APPCOMMAND_TREBLE_UP
23
Erhöhen Sie die Höhen.
APPCOMMAND_UNDO
34
Machen Sie die letzte Aktion rückgängig.
APPCOMMAND_VOLUME_DOWN
9
Verringern Sie die Lautstärke.
APPCOMMAND_VOLUME_MUTE
8
Schalten Sie die Lautstärke stumm.
APPCOMMAND_VOLUME_UP
10
Erhöhen Sie die Lautstärke.

Die uDevice-Komponente gibt das Eingabegerät an, mit dem das Eingabeereignis generiert wurde. Dabei kann es sich um einen der folgenden Werte handeln.

Wert Bedeutung
FAPPCOMMAND_KEY
0
Der Benutzer hat eine Taste gedrückt.
FAPPCOMMAND_MOUSE
0x8000
Der Benutzer hat auf eine Maustaste geklickt.
FAPPCOMMAND_OEM
0x1000
Das Ereignis wurde von einer nicht identifizierten Hardwarequelle generiert. Es kann sich um ein Maus- oder ein Tastaturereignis handelt.

Mit der dwKeys-Komponente wird angegeben, ob verschiedene virtuelle Tasten gedrückt sind; dabei kann es sich um mindestens einen der folgenden Werte handeln.

Wert Bedeutung
MK_CONTROL
0x0008
Die STRG-TASTE ist gedrückt.
MK_LBUTTON
0x0001
Die linke Maustaste ist gedrückt.
MK_MBUTTON
0x0010
Die mittlere Maustaste ist gedrückt.
MK_RBUTTON
0x0002
Die rechte Maustaste ist gedrückt.
MK_SHIFT
0x0004
Die UMSCHALT-Taste ist gedrückt.
MK_XBUTTON1
0x0020
Die erste X-Taste ist gedrückt.
MK_XBUTTON2
0x0040
Die zweite X-Taste ist gedrückt.

Rückgabewert

Wenn eine Anwendung diese Meldung verarbeitet, sollte TRUE zurückgegeben werden. Weitere Informationen zur Verarbeitung des Rückgabewerts finden Sie im Abschnitt „Bemerkungen“.

Bemerkungen

DefWindowProc generiert die WM_APPCOMMAND-Nachricht, wenn die WM_XBUTTONUP- oder die WM_NCXBUTTONUP-Nachricht verarbeitet wird oder wenn der Benutzer einen Anwendungsbefehl eingibt.

Wenn ein untergeordnetes Fenster diese Nachricht nicht verarbeitet und stattdessen DefWindowProc aufruft, sendet DefWindowProc die Nachricht an das übergeordnete Fenster. Wenn ein Fenster der obersten Ebene diese Nachricht nicht verarbeitet und stattdessen DefWindowProc aufruft, ruft DefWindowProc einen Shell-Hook auf, dessen Hookcode HSHELL_APPCOMMAND entspricht.

Um die Koordinaten des Cursors abzurufen, wenn die Nachricht mit einem Mausklick generiert wurde, kann die Anwendung GetMessagePos aufrufen. Eine Anwendung kann testen, ob die Nachricht mit der Maus generiert wurde, indem sie überprüft, ob lParamFAPPCOMMAND_MOUSE enthält.

Im Gegensatz zu anderen Windows-Nachrichten sollte eine Anwendung zu dieser Nachricht TRUE zurückgeben, wenn sie sie verarbeitet. Dadurch kann Software, die diese Meldung auf Windows-Systemen vor Windows 2000 simuliert, bestimmen, ob die Fensterprozedur die Meldung verarbeitet oder DefWindowProc für die Verarbeitung aufgerufen hat.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows 2000 Server [nur Desktop-Apps]
Header
Winuser.h (einschließlich Windows.h)

Siehe auch

Referenz

DefWindowProc

GET_APPCOMMAND_LPARAM

GET_DEVICE_LPARAM

GET_KEYSTATE_LPARAM

ShellProc

WM_XBUTTONUP

WM_NCXBUTTONUP

Konzept

Mauseingabe