Windows (Fenster und Meldungen)

In einer grafischen Windows-basierten Anwendung ist ein Fenster ein rechteckiger Bereich des Bildschirms, in dem die Anwendung die Ausgabe anzeigt und Eingaben vom Benutzer empfängt. Daher besteht eine der ersten Aufgaben einer grafischen Windows-basierten Anwendung darin, ein Fenster zu erstellen.

Ein Fenster teilt den Bildschirm mit anderen Fenstern, einschließlich der Fenster aus anderen Anwendungen. Nur jeweils ein Fenster kann Eingaben vom Benutzer empfangen. Der Benutzer kann die Maus, die Tastatur oder ein anderes Eingabegerät verwenden, um mit diesem Fenster und der Anwendung zu interagieren, die es besitzt.

In diesem Abschnitt

Name BESCHREIBUNG
Info Beschreibt die Programmierelemente, die Anwendungen zum Erstellen und Verwenden von Fenstern verwenden. Verwalten von Beziehungen zwischen Fenstern; und Größe, Verschiebung und Anzeige von Fenstern.
Verwenden von Windows Enthält Beispiele zum Ausführen von Aufgaben im Zusammenhang mit der Verwendung von Fenstern.
Fensterfeatures Erläutert Features von Fenstern wie Fenstertypen, Zustände, Größe und Position.
Fensterreferenz Enthält den API-Verweis.

Fensterfunktionen

Name BESCHREIBUNG
AdjustWindowRect Berechnet die erforderliche Größe des Fensterrechtecks basierend auf der gewünschten Clientrechteckgröße. Das Fensterrechteck kann dann an die CreateWindow-Funktion übergeben werden, um ein Fenster zu erstellen, dessen Clientbereich die gewünschte Größe hat.
AdjustWindowRectEx Berechnet die erforderliche Größe des Fensterrechtecks basierend auf der gewünschten Größe des Clientrechtecks. Das Fensterrechteck kann dann an die CreateWindowEx-Funktion übergeben werden, um ein Fenster zu erstellen, dessen Clientbereich die gewünschte Größe hat.
AllowSetForegroundWindow Ermöglicht dem angegebenen Prozess das Festlegen des Vordergrundfensters mithilfe der SetForegroundWindow-Funktion. Der aufrufende Prozess muss bereits in der Lage sein, das Vordergrundfenster festzulegen. Weitere Informationen finden Sie unter Hinweise weiter unten in diesem Thema.
AnimateWindow Ermöglicht ihnen das Erzeugen von Sondereffekten beim Anzeigen oder Ausblenden von Fenstern. Es gibt vier Arten von Animationen: roll, slide, collapse or expand und alpha-blended fade.
AnyPopup Gibt an, ob ein eigenes, sichtbares Popupfenster der obersten Ebene oder ein überlappendes Fenster auf dem Bildschirm vorhanden ist. Die Funktion durchsucht den gesamten Bildschirm, nicht nur den Clientbereich der aufrufenden Anwendung.
ArrangeIconicWindows Ordnet alle minimierten (untergeordneten) Fenster des angegebenen übergeordneten Fensters an.
BeginDeferWindowPos Belegt Arbeitsspeicher für eine Struktur mit mehreren Fenstern und gibt das Handle an die Struktur zurück.
BringWindowToTop Ruft das angegebene Fenster oben in der Z-Reihenfolge ab. Wenn es sich bei dem Fenster um ein Fenster der obersten Ebene handelt, wird es aktiviert. Wenn das Fenster ein untergeordnetes Fenster ist, wird das übergeordnete Fenster der obersten Ebene aktiviert, das dem untergeordneten Fenster zugeordnet ist.
CalculatePopupWindowPosition Berechnet eine geeignete Popupfensterposition unter Verwendung des angegebenen Ankerpunkts, der Größe des Popupfensters, der Flags und des optionalen Ausschlussrechtecks. Wenn die angegebene Größe des Popupfensters kleiner als die Größe des Desktopfensters ist, verwenden Sie die CalculatePopupWindowPosition-Funktion, um sicherzustellen, dass das Popupfenster im Desktopfenster unabhängig vom angegebenen Ankerpunkt vollständig sichtbar ist.
CascadeWindows Kaskadiert die angegebenen untergeordneten Fenster des angegebenen übergeordneten Fensters.
ChangeWindowMessageFilter Fügt dem Benutzeroberfläche-UiPI-Nachrichtenfilter (Privilege Isolation) eine Nachricht hinzu oder entfernt sie.
ChangeWindowMessageFilterEx Ändert den UIPI-Meldungsfilter für ein angegebenes Fenster.
ChildWindowFromPoint Bestimmt, welche der untergeordneten Fenster, die zu einem übergeordneten Fenster gehören, ggf. den angegebenen Punkt enthält. Die Suche ist auf direkt untergeordnete Fenster beschränkt. Untergeordnete Fenster und tiefere Nachfolgerfenster werden nicht durchsucht.
ChildWindowFromPointEx Bestimmt, welche der untergeordneten Fenster, die zum angegebenen übergeordneten Fenster gehören, ggf. den angegebenen Punkt enthält. Die Funktion kann unsichtbare, deaktivierte und transparente untergeordnete Fenster ignorieren. Die Suche ist auf direkt untergeordnete Fenster beschränkt. Untergeordnete und tiefere Nachfolger werden nicht durchsucht.
CloseWindow Minimiert (zerstört aber nicht) das angegebene Fenster.
Createwindow Erstellt ein überlappendes, Popup- oder untergeordnetes Fenster. Sie gibt die Fensterklasse, den Fenstertitel, den Fensterstil und (optional) die Anfangsposition und Größe des Fensters an. Die Funktion gibt auch das übergeordnete Element oder den Besitzer des Fensters (falls vorhanden) und das Menü des Fensters an.
Createwindowex Erstellt ein überlappendes, Popup- oder untergeordnetes Fenster mit einem erweiterten Fensterstil. Andernfalls ist diese Funktion mit der CreateWindow-Funktion identisch. Weitere Informationen zum Erstellen eines Fensters und vollständige Beschreibungen der anderen Parameter von CreateWindowExfinden Sie unter CreateWindow.
DeferWindowPos Aktualisiert die angegebene Mehrfachfensterstruktur für das angegebene Fenster. Die Funktion gibt dann ein Handle für die aktualisierte -Struktur zurück. Die EndDeferWindowPos-Funktion verwendet die Informationen in dieser Struktur, um die Position und Größe einer Anzahl von Fenstern gleichzeitig zu ändern. Die BeginDeferWindowPos-Funktion erstellt die -Struktur.
DeregisterShellHookWindow Aufheben der Registrierung eines angegebenen Shellfensters, das für den Empfang von Shell-Hooknachrichten registriert ist. Die Registrierung von Fenstern, die mit einem Aufruf der RegisterShellHookWindow-Funktion registriert wurden, wird aufgehoben.
DestroyWindow Zerstört das angegebene Fenster. Die Funktion sendet WM _ DESTROY- und WM _ NCDESTROY-Nachrichten an das Fenster, um es zu deaktivieren und den Tastaturfokus daraus zu entfernen. Die Funktion zerstört auch das Menü des Fensters, leert die Threadmeldungswarteschlange, zerstört Timer, entfernt den Besitz der Zwischenablage und unterbricht die Viewerkette der Zwischenablage (wenn sich das Fenster oben in der Viewer-Kette befindet).
EndDeferWindowPos Aktualisiert gleichzeitig die Position und Größe eines oder mehrerer Fenster in einem einzelnen Aktualisierungszyklus auf dem Bildschirm.
EndTask Schließt ein angegebenes Fenster.
EnumChildProc Anwendungsdefinierte Rückruffunktion, die mit der EnumChildWindows-Funktion verwendet wird. Er empfängt die untergeordneten Fensterhandles. Der WNDENUMPROC-Typ definiert einen Zeiger auf diese Rückruffunktion. EnumChildProc ist ein Platzhalter für den anwendungsdefinierte Funktionsnamen.
EnumChildWindows Listet die untergeordneten Fenster auf, die zum angegebenen übergeordneten Fenster gehören, indem das Handle wiederum an jedes untergeordnete Fenster an eine anwendungsdefinierte Rückruffunktion übergeben wird. EnumChildWindows wird fortgesetzt, bis das letzte untergeordnete Fenster aufzählt oder die Rückruffunktion FALSE zurückgibt.
EnumThreadWindows Listet alle nicht untergeordneten Fenster auf, die einem Thread zugeordnet sind, indem das Handle wiederum an jedes Fenster an eine anwendungsdefinierte Rückruffunktion übergeben wird. EnumThreadWindows wird fortgesetzt, bis das letzte Fenster aufzählt oder die Rückruffunktion FALSE zurückgibt. Um untergeordnete Fenster eines bestimmten Fensters aufzuzählen, verwenden Sie die EnumChildWindows-Funktion.
EnumThreadWndProc Eine anwendungsdefinierte Rückruffunktion, die mit der EnumThreadWindows-Funktion verwendet wird. Sie empfängt die einem Thread zugeordneten Fensterhandles. Der WNDENUMPROC-Typ definiert einen Zeiger auf diese Rückruffunktion. EnumThreadWndProc ist ein Platzhalter für den anwendungsdefinierte Funktionsnamen.
Enumwindows Listet alle Fenster der obersten Ebene auf dem Bildschirm auf, indem das Handle wiederum an jedes Fenster an eine anwendungsdefinierte Rückruffunktion übergeben wird. EnumWindows wird fortgesetzt, bis das letzte Fenster der obersten Ebene aufzählt oder die Rückruffunktion FALSE zurückgibt.
EnumWindowsProc Eine anwendungsdefinierte Rückruffunktion, die mit der Funktion EnumWindows oder EnumDesktopWindows verwendet wird. Er empfängt Fensterhandles der obersten Ebene. Der WNDENUMPROC-Typ definiert einen Zeiger auf diese Rückruffunktion. EnumWindowsProc ist ein Platzhalter für den anwendungsdefinierte Funktionsnamen.
Findwindow Ruft ein Handle für das Fenster der obersten Ebene ab, dessen Klassenname und Fenstername mit den angegebenen Zeichenfolgen übereinstimmen. Diese Funktion durchsucht keine untergeordneten Fenster. Diese Funktion führt keine Suche durch, bei der die Groß-/Kleinschreibung beachtet wird.
FindWindowEx Ruft ein Handle für ein Fenster ab, dessen Klassenname und Fenstername den angegebenen Zeichenfolgen entsprechen. Die Funktion durchsucht untergeordnete Fenster, beginnend mit dem Fenster, das dem angegebenen untergeordneten Fenster folgt. Diese Funktion führt keine Suche durch, bei der die Groß-/Kleinschreibung beachtet wird.
GetAltTabInfo Ruft Statusinformationen für das angegebene Fenster ab, wenn es sich um das Anwendungswechselfenster (ALT+TAB) handelt.
GetAncestor Ruft das Handle für den Vorgänger des angegebenen Fensters ab.
GetClientRect Ruft die Koordinaten des Clientbereichs eines Fensters ab. Die Clientkoordinaten geben die obere linke und die untere rechte Ecke des Clientbereichs an. Da Clientkoordinaten relativ zur oberen linken Ecke des Clientbereichs eines Fensters sind, sind die Koordinaten der oberen linken Ecke (0,0).
GetDesktopWindow Gibt ein Handle für das Desktopfenster zurück. Das Desktopfenster deckt den gesamten Bildschirm ab. Das Desktopfenster ist der Bereich, auf dem andere Fenster gezeichnet werden.
GetForegroundWindow Gibt ein Handle für das Vordergrundfenster zurück (das Fenster, mit dem der Benutzer gerade arbeitet). Das System weist dem Thread, der das Vordergrundfenster erstellt, eine etwas höhere Priorität zu als anderen Threads.
GetGUIThreadInfo Ruft Informationen über das aktive Fenster oder einen angegebenen GUI-Thread ab.
GetLastActivePopup Bestimmt, welches Popupfenster im Besitz des angegebenen Fensters zuletzt aktiv war.
GetLayeredWindowAttributes Ruft die Deckkraft- und Transparenzfarbenschlüssel eines überlappenden Fensters ab.
GetNextWindow Ruft ein Handle für das nächste oder vorherige Fenster in der Z-Reihenfolgeab. Das nächste Fenster befindet sich unterhalb des angegebenen Fensters. das vorherige Fenster befindet sich oben. Wenn das angegebene Fenster ein oberstes Fenster ist, ruft die Funktion ein Handle für das nächste (oder vorherige) oberste Fenster ab. Wenn das angegebene Fenster ein Fenster der obersten Ebene ist, ruft die Funktion ein Handle für das nächste (oder vorherige) Fenster der obersten Ebene ab. Wenn das angegebene Fenster ein untergeordnetes Fenster ist, sucht die Funktion nach einem Handle für das nächste (oder vorherige) untergeordnete Fenster.
GetParent Ruft ein Handle für das übergeordnete Element oder den Besitzer des angegebenen Fensters ab.
GetProcessDefaultLayout Ruft das Standardlayout ab, das verwendet wird, wenn Fenster ohne übergeordnetes Element oder Besitzer erstellt werden.
GetShellWindow Gibt ein Handle für das Desktopfenster der Shell zurück.
GetTitleBarInfo Ruft Informationen über die angegebene Titelleiste ab.
GetTopWindow Überprüft die Z-Reihenfolge der untergeordneten Fenster, die dem angegebenen übergeordneten Fenster zugeordnet sind, und ruft ein Handle für das untergeordnete Fenster oben in der Z-Reihenfolge ab.
GetWindow Ruft ein Handle für ein Fenster ab, das über die angegebene Beziehung(Z-Order oder Besitzer) zum angegebenen Fenster verfügt.
GetWindowDisplayAffinity Ruft die aktuelle Einstellung für die Anzeigeaffinität aus einem beliebigen Prozess für ein bestimmtes Fenster ab.
GetWindowInfo Ruft Informationen zum angegebenen Fenster ab.
GetWindowModuleFileName Ruft den vollständigen Pfad und Dateinamen des Moduls ab, das dem angegebenen Fensterhandle zugeordnet ist.
GetWindowPlacement Ruft den Showzustand und die wiederhergestellten, minimierten und maximierten Positionen des angegebenen Fensters ab.
GetWindowRect Ruft die Dimensionen des umgrenzenden Rechtecks des angegebenen Fensters ab. Die Abmessungen werden in Bildschirmkoordinaten angegeben, die relativ zur oberen linken Ecke des Bildschirms sind.
GetWindowText Kopiert den Text der Titelleiste des angegebenen Fensters (sofern vorhanden) in einen Puffer. Wenn das angegebene Fenster ein -Steuerelement ist, wird der Text des Steuerelements kopiert. GetWindowText kann jedoch nicht den Text eines Steuerelements in einer anderen Anwendung abrufen.
GetWindowTextLength Ruft die Länge des Titelleistentexts des angegebenen Fensters in Zeichen ab (wenn das Fenster über eine Titelleiste verfügt). Wenn das angegebene Fenster ein -Steuerelement ist, ruft die Funktion die Länge des Texts innerhalb des Steuerelements ab. GetWindowTextLength kann jedoch nicht die Länge des Texts eines Bearbeitungssteuerelements in einer anderen Anwendung abrufen.
GetWindowThreadProcessId Ruft den Bezeichner des Threads ab, der das angegebene Fenster erstellt hat, und optional den Bezeichner des Prozesses, der das Fenster erstellt hat.
IsChild Bestimmt, ob ein Fenster ein untergeordnetes Fenster oder ein Nachfolgerfenster eines angegebenen übergeordneten Fensters ist. Ein untergeordnetes Fenster ist der direkte Nachfolger eines angegebenen übergeordneten Fensters, wenn sich dieses übergeordnete Fenster in der Kette der übergeordneten Fenster befindet. Die Kette übergeordneter Fenster führt vom ursprünglichen überlappenden oder Popupfenster zum untergeordneten Fenster.
IsGUIThread Bestimmt, ob der aufrufende Thread bereits ein GUI-Thread ist. Optional kann der Thread auch in einen GUI-Thread konvertiert werden.
IsHungAppWindow Bestimmt, ob Windows ansieht, dass eine angegebene Anwendung nicht reagiert. Eine Anwendung wird als nicht reagierend betrachtet, wenn sie nicht auf eingabe wartet, sich nicht in der Startverarbeitung befindet und peekMessage nicht innerhalb des internen Timeoutzeitraums von 5 Sekunden aufgerufen hat.
IsIconic Bestimmt, ob das angegebene Fenster minimiert ist (Vererbung).
IsProcessDPIAware Ruft einen Wert ab, der angibt, ob der aktuelle Prozess Punkt pro Zoll (dpi) ist, sodass er die Größen von Benutzeroberflächenelementen anpasst, um die DPI-Einstellung zu kompensieren.
IsWindow Bestimmt, ob das angegebene Fensterhandle ein vorhandenes Fenster identifiziert.
IsWindowUnicode Bestimmt, ob das angegebene Fenster ein natives Unicode-Fenster ist.
IsWindowVisible Ruft den Sichtbarkeitszustand des angegebenen Fensters ab.
IsZoomed Bestimmt, ob ein Fenster maximiert ist.
LockSetForegroundWindow Der Vordergrundprozess kann die LockSetForegroundWindow-Funktion aufrufen, um Aufrufe der SetForegroundWindow-Funktion zu deaktivieren.
LogicalToPhysicalPoint Konvertiert die logischen Koordinaten eines Punkts in einem Fenster in physische Koordinaten.
MoveWindow Ändert die Position und die Abmessungen des angegebenen Fensters. Für ein Fenster der obersten Ebene sind die Position und die Abmessungen relativ zur oberen linken Ecke des Bildschirms. Bei einem untergeordneten Fenster sind sie relativ zur oberen linken Ecke des Clientbereichs des übergeordneten Fensters.
OpenIcon Stellt ein minimiertes (verkleinertes) Fenster auf die vorherige Größe und Position wieder her. anschließend wird das Fenster aktiviert.
PhysicalToLogicalPoint Konvertiert die physischen Koordinaten eines Punkts in einem Fenster in logische Koordinaten.
RealChildWindowFromPoint Ruft ein Handle für das untergeordnete Fenster am angegebenen Punkt ab. Die Suche ist auf direkt untergeordnete Fenster beschränkt. Untergeordnete fenster und tiefere Nachfolgerfenster werden nicht durchsucht.
RealGetWindowClass Ruft eine Zeichenfolge ab, die den Fenstertyp angibt.
RegisterShellHookWindow Registriert ein angegebenes Shellfenster, um bestimmte Nachrichten für Ereignisse oder Benachrichtigungen zu empfangen, die für Shell-Anwendungen nützlich sind. Die empfangenen Ereignismeldungen sind nur diejenigen, die an das Shellfenster gesendet werden, das dem Desktop des angegebenen Fensters zugeordnet ist. Viele der Nachrichten sind identisch mit denen, die empfangen werden können, nachdem die SetWindowsHookEx-Funktion aufgerufen und WH _ SHELL für den Hooktyp angegeben wurde. Der Unterschied zu RegisterShellHookWindow besteht darin, dass die Nachrichten über windowProc des angegebenen Fensters und nicht über eine Rückrufprozedur empfangen werden.
SetForegroundWindow Versetzt den Thread, der das angegebene Fenster erstellt hat, in den Vordergrund und aktiviert das Fenster. Tastatureingaben werden an das Fenster weitergeleitet, und verschiedene visuelle Hinweise werden für den Benutzer geändert. Das System weist dem Thread, der das Vordergrundfenster erstellt hat, eine etwas höhere Priorität zu als anderen Threads.
SetLayeredWindowAttributes Legt die Deckkraft- und Transparenzfarbenschlüssel eines überlappenden Fensters fest.
SetParent Ändert das übergeordnete Fenster des angegebenen untergeordneten Fensters.
SetProcessDefaultLayout Ändert das Standardlayout, wenn Fenster nur für den aktuell ausgeführten Prozess ohne übergeordnetes Element oder Besitzer erstellt werden.
SetProcessDPIAware Legt den aktuellen Prozess als dpi-fähigen Fest.
SetWindowDisplayAffinity Speichert die Einstellung für die Anzeigeaffinität im Kernelmodus auf dem hWnd, der dem Fenster zugeordnet ist.
SetWindowPlacement Legt den Showzustand und die wiederhergestellten, minimierten und maximierten Positionen des angegebenen Fensters fest.
SetWindowPos Ändert die Größe, Position und Z-Reihenfolge eines untergeordneten Fensters, Popupfensters oder Fensters der obersten Ebene. Diese Fenster werden entsprechend ihrer Darstellung auf dem Bildschirm sortiert. Das oberste Fenster erhält den höchsten Rang und ist das erste Fenster in der Z-Reihenfolge.
SetWindowText Ändert den Text der Titelleiste des angegebenen Fensters (sofern er über eine verfügt). Wenn das angegebene Fenster ein -Steuerelement ist, wird der Text des Steuerelements geändert. SetWindowText kann den Text eines Steuerelements in einer anderen Anwendung jedoch nicht ändern.
ShowOwnedPopups Zeigt alle Popupfenster im Besitz des angegebenen Fensters an oder blendet sie aus.
ShowWindow Legt den Showzustand des angegebenen Fensters fest.
ShowWindowAsync Legt den Showzustand eines Fensters fest, das von einem anderen Thread erstellt wurde.
SoundSentry Löst ein visuelles Signal aus, um anzugeben, dass ein Sound wiedergegeben wird.
SwitchToThisWindow Schaltet den Fokus auf ein angegebenes Fenster und stellt es in den Vordergrund.
TileWindows Kachelt die angegebenen untergeordneten Fenster des angegebenen übergeordneten Fensters.
UpdateLayeredWindow Aktualisiert die Position, Größe, Form, Inhalte und Lichtdurchlässigkeit eines überlappenden Fensters.
Updatelayeredwindowindirect Aktualisiert die Position, Größe, Form, Inhalte und Lichtdurchlässigkeit eines überlappenden Fensters.
WindowFromPhysicalPoint Ruft ein Handle für das Fenster ab, das den angegebenen physischen Punkt enthält.
WindowFromPoint Ruft ein Handle für das Fenster ab, das den angegebenen Punkt enthält.
WinMain WinMain ist der herkömmliche Name für den vom Benutzer bereitgestellten Einstiegspunkt für eine Windows-basierte Anwendung.

Fenstermakros

Name BESCHREIBUNG
GET _ X _ LPARAM Ruft die x-Koordinate mit Vorzeichen aus dem angegebenen LPARAM-Wert ab.
GET _ Y _ LPARAM Ruft die y-Koordinate mit Vorzeichen aus dem angegebenen LPARAM-Wert ab.
HIBYTE Ruft das höherwertige Byte aus dem angegebenen 16-Bit-Wert ab.
HIWORD Ruft das Wort in hoher Reihenfolge aus dem angegebenen 32-Bit-Wert ab.
LOBYTE Ruft das Byte mit niedriger Reihenfolge aus dem angegebenen Wert ab.
LOWORD Ruft das Wort mit niedriger Reihenfolge aus dem angegebenen Wert ab.
MAKELONG Erstellt einen LONG-Wert, indem die angegebenen Werte verkettet werden.
MAKELPARAM Erstellt einen Wert für die Verwendung als lParam-Parameter in einer Nachricht. Das Makro verkettet die angegebenen Werte.
MAKELRESULT Erstellt einen Wert für die Verwendung als Rückgabewert aus einer Fensterprozedur. Das Makro verkettet die angegebenen Werte.
MAKEWORD Erstellt einen WORD-Wert, indem die angegebenen Werte verkettet werden.
MAKEWPARAM Erstellt einen Wert für die Verwendung als wParam-Parameter in einer Nachricht. Das Makro verkettet die angegebenen Werte.

Fenstermeldungen

Name BESCHREIBUNG
MN _ GETHMENU Ruft die HMENU für das aktuelle Fenster ab.
WM _ GETFONT Ruft die Schriftart ab, mit der das Steuerelement derzeit seinen Text zeichnen soll.
WM _ GETTEXT Kopiert den Text, der einem Fenster entspricht, in einen Puffer, der vom Aufrufer bereitgestellt wird.
WM _ GETTEXTLENGTH Bestimmen Sie die Länge des Einem Fenster zugeordneten Texts in Zeichen.
WM _ SETFONT Gibt die Schriftart an, die ein Steuerelement beim Zeichnen von Text verwenden soll.
WM _ SETICON Ordnet einem Fenster ein neues großes oder kleines Symbol zu. Das System zeigt das große Symbol im Dialogfeld ALT+TAB und das kleine Symbol in der Fensterbeschriftung an.
WM _ SETTEXT Legt den Text eines Fensters fest.

Fensterbenachrichtigungen

Name BESCHREIBUNG
WM _ ACTIVATEAPP Wird gesendet, wenn ein Fenster, das zu einer anderen Anwendung als dem aktiven Fenster gehört, aktiviert wird. Die Nachricht wird an die Anwendung gesendet, deren Fenster aktiviert wird, und an die Anwendung, deren Fenster deaktiviert wird.
Ein Fenster empfängt diese Nachricht über seine WindowProc-Funktion.
WM _ CANCELMODE Wird gesendet, um bestimmte Modi abzubricht, z. B. Mauserfassung. Beispielsweise sendet das System diese Meldung an das aktive Fenster, wenn ein Dialogfeld oder Meldungsfeld angezeigt wird. Bestimmte Funktionen senden diese Nachricht auch explizit an das angegebene Fenster, unabhängig davon, ob es sich um das aktive Fenster handelt. Beispielsweise sendet die EnableWindow-Funktion diese Meldung, wenn das angegebene Fenster deaktiviert wird.
WM _ CHILDACTIVATE Wird an ein untergeordnetes Fenster gesendet, wenn der Benutzer auf die Titelleiste des Fensters klickt oder wenn das Fenster aktiviert, verschoben oder dimensioniert wird.
WM _ CLOSE Wird als Signal gesendet, dass ein Fenster oder eine Anwendung beendet werden soll.
WM _ COMPACTING Wird an alle Fenster der obersten Ebene gesendet, wenn das System in einem Intervall von 30 bis 60 Sekunden mehr als 12,5 Prozent der Systemzeit erkennt, um Arbeitsspeicher zu komprimieren. Dies gibt an, dass der Systemspeicher gering ist.
WM _ CREATE Wird gesendet, wenn eine Anwendung die Erstellung eines Fensters durch Aufrufen der Funktion CreateWindowEx oder CreateWindow an fordert. (Die Nachricht wird gesendet, bevor die Funktion zurückgegeben wird.) Die Fensterprozedur des neuen Fensters empfängt diese Meldung, nachdem das Fenster erstellt wurde, aber bevor das Fenster sichtbar wird.
WM _ DESTROY Wird gesendet, wenn ein Fenster zerstört wird. Sie wird an die Fensterprozedur des Fensters gesendet, das zerstört wird, nachdem das Fenster vom Bildschirm entfernt wurde.
Diese Meldung wird zuerst an das zu zerstörende Fenster und dann an die untergeordneten Fenster (sofern diese zerstört werden) gesendet. Während der Verarbeitung der Nachricht kann davon ausgegangen werden, dass alle untergeordneten Fenster noch vorhanden sind.
WM _ ENABLE Wird gesendet, wenn eine Anwendung den aktivierten Zustand eines Fensters ändert. Er wird an das Fenster gesendet, dessen aktivierter Zustand sich ändert. Diese Meldung wird gesendet, bevor die EnableWindow-Funktion zurückgegeben wird, aber nachdem sich der aktivierte Zustand (WS _ DISABLED style bit) des Fensters geändert hat.
WM _ ENTERSIZEMOVE Wird einmal an ein Fenster gesendet, nachdem es in die modale Schleife zum Verschieben oder Anpassen der Größe gelangt ist. Das Fenster wird in die modale Schleife zum Verschieben oder Ändern der Größe eintritt, wenn der Benutzer auf die Titelleiste oder den Größenrahmen des Fensters klickt oder wenn das Fenster die WM _ SYSCOMMAND-Nachricht an die DefWindowProc-Funktion übergibt und der wParam-Parameter der Nachricht den SC _ MOVE- oder SC _ SIZE-Wert angibt. Der Vorgang ist abgeschlossen, wenn DefWindowProc zurückgegeben wird.
Das System sendet die WM _ ENTERSIZEMOVE-Nachricht unabhängig davon, ob das Ziehen vollständiger Fenster aktiviert ist.
WM _ ERASEBKGND Wird gesendet, wenn der Fensterhintergrund gelöscht werden muss (z. B. wenn die Größe eines Fensters geändert wird). Die Nachricht wird gesendet, um einen ungültigen Teil eines Fensters für das Malen vorzubereiten.
WM _ EXITSIZEMOVE Einmal an ein Fenster gesendet, nachdem es die modale Schleife zum Verschieben oder Anpassen der Größe beendet hat. Das Fenster wird in die modale Schleife zum Verschieben oder Ändern der Größe eintritt, wenn der Benutzer auf die Titelleiste oder den Größenrahmen des Fensters klickt oder wenn das Fenster die WM _ SYSCOMMAND-Nachricht an die DefWindowProc-Funktion übergibt und der wParam-Parameter der Nachricht den SC _ MOV E- oder SC _ SIZE-Wert angibt. Der Vorgang ist abgeschlossen, wenn DefWindowProc zurückgegeben wird.
WM _ GETICON Wird an ein Fenster gesendet, um ein Handle für das große oder kleine Symbol abzurufen, das einem Fenster zugeordnet ist. Das System zeigt das große Symbol im Dialogfeld ALT+TAB und das kleine Symbol in der Fensterbeschriftung an.
WM _ GETMINMAXINFO Wird an ein Fenster gesendet, wenn sich die Größe oder Position des Fensters ändert. Eine Anwendung kann diese Meldung verwenden, um die standardmäßige maximierte Größe und Position des Fensters oder die standardmäßige minimale oder maximale Nachverfolgungsgröße zu überschreiben.
WM _ INPUTLANGCHANGE Wird an das am weitesten betroffene Fenster gesendet, nachdem die Eingabesprache einer Anwendung geändert wurde. Sie sollten alle anwendungsspezifischen Einstellungen vornehmen und die Nachricht an die DefWindowProc-Funktion übergeben, die die Nachricht an alle untergeordneten Fenster der ersten Ebene übergibt. Diese untergeordneten Fenster können die Nachricht an DefWindowProc übergeben, damit die Nachricht an ihre untergeordneten Fenster übergeben wird, und so weiter.
WM _ INPUTLANGCHANGEREQUEST Wird an das Fenster mit dem Fokus gesendet, wenn der Benutzer eine neue Eingabesprache auswählt, entweder mit dem Hotkey (angegeben in der Anwendung Tastatursteuerung) oder über den Indikator auf der Systemtastleiste. Eine Anwendung kann die Änderung akzeptieren, indem sie die Nachricht an die DefWindowProc-Funktion übergehen oder die Änderung ablehnen (und verhindern kann), indem sie sofort zurücksendet.
WM _ MOVE Wird gesendet, nachdem ein Fenster verschoben wurde.
WM _ MOVING Wird an ein Fenster gesendet, das der Benutzer bewegt. Durch die Verarbeitung dieser Nachricht kann eine Anwendung die Position des Ziehrechtecks überwachen und bei Bedarf seine Position ändern.
WM _ NCACTIVATE Wird an ein Fenster gesendet, wenn sein Nicht-Clientbereich geändert werden muss, um einen aktiven oder inaktiven Zustand anzugeben.
WM _ NCCALCSIZE Wird gesendet, wenn größe und position des Clientbereichs eines Fensters berechnet werden müssen. Durch die Verarbeitung dieser Nachricht kann eine Anwendung den Inhalt des Clientbereichs des Fensters steuern, wenn sich die Größe oder Position des Fensters ändert.
WM _ NCCREATE Wird vor der WM _ CREATE-Meldung gesendet, wenn ein Fenster zum ersten Mal erstellt wird.
WM _ NCDESTROY Informiert ein Fenster darüber, dass sein Nicht-Clientbereich zerstört wird. Die DestroyWindow-Funktion sendet die WM _ NCDESTROY-Nachricht an das Fenster nach der WM _ DESTROY-Nachricht. WM _ DESTROY wird verwendet, um das zugeordnete Speicherobjekt frei zu geben, das dem Fenster zugeordnet ist.
Die WM _ NCDESTROY-Nachricht wird gesendet, nachdem die untergeordneten Fenster zerstört wurden. Im Gegensatz dazu wird WM _ DESTROY gesendet, bevor die untergeordneten Fenster zerstört werden.
WM _ NULL Führt keinen Vorgang aus. Eine Anwendung sendet die WM _ NULL-Nachricht, wenn sie eine Nachricht veröffentlichen möchte, die das Empfängerfenster ignoriert.
WM _ PARENTNOTIFY Wird an das übergeordnete Element eines untergeordneten Fensters gesendet, wenn das untergeordnete Fenster erstellt oder zerstört wird oder wenn der Benutzer auf eine Maustaste klickt, während sich der Cursor über dem untergeordneten Fenster befindet. Wenn das untergeordnete Fenster erstellt wird, sendet das System WM _ PARENTNOTIFY direkt vor der Funktion CreateWindow oder CreateWindowEx, die das Fenster erstellt. Wenn das untergeordnete Fenster zerstört wird, sendet das System die Nachricht, bevor eine Verarbeitung zum Zerstören des Fensters stattfindet.
WM _ QUERYDRAGICON Wird an ein minimiertes (symbolisch) Fenster gesendet. Das Fenster wird vom Benutzer gezogen, aber es ist kein Symbol für seine Klasse definiert. Eine Anwendung kann ein Handle an ein Symbol oder einen Cursor zurückgeben. Das System zeigt diesen Cursor oder dieses Symbol an, während der Benutzer das Symbol zieht.
WM _ QUERYOPEN Wird an ein Symbol gesendet, wenn der Benutzer anfordert, dass das Fenster in seiner vorherigen Größe und Position wiederhergestellt wird.
WM _ QUIT Gibt eine Anforderung zum Beenden einer Anwendung an und wird generiert, wenn die Anwendung die PostQuitMessage-Funktion aufruft. Dadurch gibt die GetMessage-Funktion 0 (null) zurück.
WM _ SHOWWINDOW Wird an ein Fenster gesendet, wenn das Fenster ausgeblendet oder angezeigt wird.
_WM-GRÖßE Wird an ein Fenster gesendet, nachdem seine Größe geändert wurde.
GRÖßE DER WM _ Wird an ein Fenster gesendet, in dem die Größe des Benutzers geändert wird. Durch die Verarbeitung dieser Nachricht kann eine Anwendung die Größe und Position des Ziehrechtecks überwachen und bei Bedarf die Größe oder Position ändern.
WM _ STYLECHANGED Wechseln Sie zu einem Fenster, nachdem die SetWindowLong-Funktion einen oder mehrere Stile des Fensters geändert hat.
WM _ STYLECHANGING Wird an ein Fenster gesendet, wenn die SetWindowLong-Funktion einen oder mehrere Stile des Fensters ändern soll.
WM _ THEMECHANGED Wird nach einem Designänderungsereignis an jedes Fenster gesendet. Beispiele für Designänderungsereignisse sind die Aktivierung eines Designs, die Deaktivierung eines Designs oder ein Übergang von einem Design zu einem anderen.
WM _ USERCHANGED Wird an alle Fenster gesendet, nachdem sich der Benutzer angemeldet oder deaktiviert hat. Wenn sich der Benutzer anmeldet oder deaktiviert, aktualisiert das System die benutzerspezifischen Einstellungen. Das System sendet diese Nachricht sofort nach dem Aktualisieren der Einstellungen.
_WM-FENSTERPOSCHANGED Wird an ein Fenster gesendet, dessen Größe, Position oder Position in der Z-Reihenfolge durch einen Aufruf der SetWindowPos-Funktion oder einer anderen Fensterverwaltungsfunktion geändert wurde.
_WM-FENSTERPOSCHANGING Wird an ein Fenster gesendet, dessen Größe, Position oder Position in der Z-Reihenfolge aufgrund eines Aufrufs der SetWindowPos-Funktion oder einer anderen Fensterverwaltungsfunktion geändert werden soll.

Fensterstrukturen

Name BESCHREIBUNG
ALTTABINFO Enthält Statusinformationen für das Anwendungswechselfenster (ALT+TAB).
CHANGEFILTERSTRUCT Enthält erweiterte Ergebnisinformationen, die durch Aufrufen der ChangeWindowMessageFilterEx-Funktion abgerufen werden.
CLIENTCREATESTRUCT Enthält Informationen über das Menü und das erste untergeordnete MDI-Fenster (Multiple Document Interface) eines MDI-Clientfensters. Eine Anwendung übergibt beim Erstellen eines MDI-Clientfensters einen Zeiger auf diese Struktur als lpParam-Parameter der CreateWindow-Funktion.
CREATESTRUCT Definiert die Initialisierungsparameter, die an die Fensterprozedur einer Anwendung übergeben werden. Diese Member sind mit den Parametern der CreateWindowEx-Funktion identisch.
GUITHREADINFO Enthält Informationen zu einem GUI-Thread.
MINMAXINFO Enthält Informationen zur maximierten Größe und Position eines Fensters sowie zur minimalen und maximalen Nachverfolgungsgröße.
NCCALCSIZE _ PARAMS Enthält Informationen, die eine Anwendung beim Verarbeiten der WM _ NCCALCSIZE-Nachricht verwenden kann, um die Größe, Position und den gültigen Inhalt des Clientbereichs eines Fensters zu berechnen.
STYLESTRUCT Enthält die Stile für ein Fenster.
TITLEBARINFO Enthält Informationen zur Titelleiste.
TITLEBARINFOEX Erweitert die in der TITLEBARINFO-Struktur beschriebenen Informationen, indem die Koordinaten der einzelnen Elemente der Titelleiste eingeschlossen werden.
UPDATELAYEREDWINDOWINFO Wird von UpdateLayeredWindowIndirect verwendet, um Informationen zu Position, Größe, Form, Inhalt und Transparenz für ein mehrstufiges Fenster bereitzustellen.
WINDOWINFO Enthält Fensterinformationen.
WINDOWPLACEMENT Enthält Informationen zur Platzierung eines Fensters auf dem Bildschirm.
WINDOWPOS Enthält Informationen zur Größe und Position eines Fensters.

Fensterkonstanten

Name BESCHREIBUNG
Erweiterte Fensterstile Stile, die überall dort angegeben werden können, wo ein erweiterter Fensterstil erforderlich ist.
Fensterstile Stile, die überall dort angegeben werden können, wo ein Fensterstil erforderlich ist. Nachdem das Steuerelement erstellt wurde, können diese Stile nur wie angegeben geändert werden.