Ein Fenster empfängt diese Meldung, wenn der Benutzer einen Befehl aus dem Menü Fenster (früher bekannt als das Menü System oder Steuerelement), oder wenn der Benutzer auf die Schaltfläche Maximieren, Minimieren-Schaltfläche, Schaltfläche Wiederherstellen oder schließen Schaltfläche.
WM_SYSCOMMAND uCmdType = wParam; / / Art der Systembefehl angefordert xPos = LOWORD(lParam); / / horizontale Position im Bildschirm Koordinaten yPos = HIWORD(lParam); / / vertikale Position, in Bildschirm-Koordinaten
| Wert | Bedeutung |
|---|---|
| SC_CLOSE | Schließt das Fenster. |
| SC_CONTEXTHELP | Ändert sich der Cursor in ein Fragezeichen mit einem Zeiger. Wenn der Benutzer dann auf ein Steuerelement im Dialogfeld klickt, erhält das Steuerelement eine WM_HELP-Meldung. |
| SC_DEFAULT | Wählt die Standard-Position; der Benutzer doppelgeklickt Menü Fenster. |
| SC_HOTKEY | Aktiviert das Fenster der Anwendung angegebenen Tastenkombination zugeordnet. Das niederwertigen Wort von lParam identifiziert das Fenster aktivieren. |
| SC_HSCROLL | Führt einen Bildlauf horizontal. |
| SC_KEYMENU | Ruft das Fenstermenü aus einem Tastendruck. |
| SC_MAXIMIZE | Maximiert das Fenster. |
| SC_MINIMIZE | Minimiert das Fenster. |
| SC_MONITORPOWERnbsp; & nbsp; | Legt den Zustand des Displays. Dieser Befehl unterstützt Geräte mit Stromspar-Features, z. B. Batterie-betriebene Personal computer. lParam kann die folgenden Werte aufweisen.: 1 bedeutet, dass das Display zu low-power. 2 bedeutet, dass das Display abgeschaltet wird. |
| SC_MOUSEMENU | Ruft das Fenstermenü aus einem Maus-Klick. |
| SC_MOVE | Verschiebt das Fenster. |
| SC_NEXTWINDOW | Wechselt zum nächsten Fenster. |
| SC_PREVWINDOW | Wechselt zum vorherigen Fenster. |
| SC_RESTORE | Setzt Fenster in seine normale Position und Größe. |
| SC_SCREENSAVE | Führt die Schirm Sparer Anwendung angegeben im Abschnitt [Boot] des Systems.INI-Datei. |
| SC_SIZE | Die Größe des Fensters. |
| SC_TASKLIST | Aktiviert das Start -Menü. |
| SC_VSCROLL | Führt einen Bildlauf vertikal. |
Eine Anwendung sollte 0 zurückgeben, wenn es diese Nachricht verarbeitet.
Die DefWindowProc -Funktion führt das Fenster Menü Anfrage für vordefinierten Aktionen in der obigen Tabelle angegeben.
In WM_SYSCOMMAND-Nachrichten werden die vier niederwertigen Bits des uCmdType -Parameters intern vom System verwendet. Um das richtige Ergebnis zu erhalten, wenn Sie den Wert des uCmdTypezu testen, muss eine Anwendung den Wert 0xFFF0 mit dem uCmdType -Wert kombinieren mithilfe der bitweisen AND-operator.
Die Menüelemente im Menü Fenster können mithilfe der GetSystemMenu, AppendMenu InsertMenu, ModifyMenu, InsertMenuItemund SetzenMenüelement Funktionen geändert werden. Anwendungen, die im Menü Fenster ändern müssen WM_SYSCOMMAND-Nachrichten verarbeiten.
Eine Anwendung kann einen Systembefehl jederzeit indem eine WM_SYSCOMMAND-Nachrichten an DefWindowProcdurchführen. Alle WM_SYSCOMMAND-Nachrichten nicht von der Anwendung behandelt müssen an DefWindowProcübergeben werden. Jeder Befehl Mehrwerte von einer Anwendung müssen von der Anwendung verarbeitet werden und können nicht an DefWindowProc.
Zugriffstasten, die definiert werden, um Elemente aus dem Fenster -Menü wählen sind WM_SYSCOMMAND-Nachrichten übersetzt; alle anderen Beschleuniger Tastenanschläge werden in WM_COMMAND-Nachrichten übersetzt.
&Nbsp; Windows NT: Version 3.1 oder höher erforderlich.
Windows:Erfordert Windows 95 oder höher.
Windows CE:Version 1.0 oder höher benötigt.
Header:In winuser.h deklarierten.
Keyboard Accelerators Übersicht, Tastaturmeldungen Accelerator, Power-Management-Übersicht, AppendMenu, DefWindowProc, GetSystemMenu, InsertMenu, ModifyMenu, WM_COMMAND