Freigeben über


WINDOWPOS-Struktur (winuser.h)

Enthält Informationen zur Größe und Position eines Fensters.

Syntax

typedef struct tagWINDOWPOS {
  HWND hwnd;
  HWND hwndInsertAfter;
  int  x;
  int  y;
  int  cx;
  int  cy;
  UINT flags;
} WINDOWPOS, *LPWINDOWPOS, *PWINDOWPOS;

Member

hwnd

Typ: HWND

Ein Handle für das Fenster.

hwndInsertAfter

Typ: HWND

Die Position des Fensters in Z-Reihenfolge (Front-to-Back-Position). Dieser Member kann ein Handle für das Fenster sein, hinter dem sich dieses Fenster befindet, oder einer der speziellen Werte sein, die mit der SetWindowPos-Funktion aufgeführt sind.

x

Typ: int

Die Position des linken Fensterrands.

y

Typ: int

Die Position des oberen Fensterrands.

cx

Typ: int

Die Fensterbreite in Pixel.

cy

Typ: int

Die Fensterhöhe in Pixel.

flags

Typ: UINT

Die Fensterposition. Bei diesem Member kann es sich um einen oder mehrere der folgenden Werte handeln.

Wert Bedeutung
SWP_DRAWFRAME
0x0020
Zeichnet einen Rahmen (definiert in der Klassenbeschreibung des Fensters) um das Fenster. Identisch mit dem flag SWP_FRAMECHANGED .
SWP_FRAMECHANGED
0x0020
Sendet eine WM_NCCALCSIZE Nachricht an das Fenster, auch wenn die Größe des Fensters nicht geändert wird. Wenn dieses Flag nicht angegeben ist, wird WM_NCCALCSIZE nur gesendet, wenn die Größe des Fensters geändert wird.
SWP_HIDEWINDOW
0x0080
Blendet das Fenster aus.
SWP_NOACTIVATE
0x0010
Aktiviert das Fenster nicht. Wenn dieses Flag nicht festgelegt ist, wird das Fenster aktiviert und an den Anfang der obersten oder nicht obersten Gruppe verschoben (abhängig von der Einstellung des hwndInsertAfter-Elements ).
SWP_NOCOPYBITS
0x0100
Verwirft den gesamten Inhalt des Clientbereichs. Wenn dieses Flag nicht angegeben ist, werden die gültigen Inhalte des Clientbereichs gespeichert und wieder in den Clientbereich kopiert, nachdem das Fenster dimensioniert oder neu positioniert wurde.
SWP_NOMOVE
0x0002
Behält die aktuelle Position bei (ignoriert die x - und y-Elemente ).
SWP_ NOOWNERZORDER
0x0200
Ändert die Position des Besitzerfensters in der Z-Reihenfolge nicht.
SWP_NOREDRAW
0x0008
Änderungen werden nicht neu gezeichnet. Wenn dieses Flag festgelegt ist, erfolgt keine Neulackierung jeglicher Art. Dies gilt für den Clientbereich, den Nichtclientbereich (einschließlich Titelleiste und Bildlaufleisten) und alle Teile des übergeordneten Fensters, die aufgrund des Verschiebens des Fensters aufgedeckt wurden. Wenn dieses Flag festgelegt ist, muss die Anwendung alle Teile des Fensters und des übergeordneten Fensters, die neu ausgezeichnet werden müssen, explizit für ungültig erklären oder neu zeichnen.
SWP_NOREPOSITION
0x0200
Ändert die Position des Besitzerfensters in der Z-Reihenfolge nicht. Identisch mit dem flag SWP_NOOWNERZORDER .
SWP_NOSENDCHANGING
0x0400
Verhindert, dass das Fenster die WM_WINDOWPOSCHANGING-Nachricht empfängt.
SWP_NOSIZE
0x0001
Behält die aktuelle Größe bei (ignoriert die Elemente cx und cy ).
SWP_NOZORDER
0x0004
Behält die aktuelle Z-Reihenfolge bei (ignoriert das Element hwndInsertAfter ).
SWP_SHOWWINDOW
0x0040
Zeigt das Fenster an.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Kopfzeile winuser.h (windows.h einschließen)

Siehe auch

Konzept

EndDeferWindowPos

Referenz

SetWindowPos

WM_NCCALCSIZE

Windows