WINDOWPLACEMENT-Struktur (winuser.h)
Enthält Informationen zur Platzierung eines Fensters auf dem Bildschirm.
Syntax
typedef struct tagWINDOWPLACEMENT {
UINT length;
UINT flags;
UINT showCmd;
POINT ptMinPosition;
POINT ptMaxPosition;
RECT rcNormalPosition;
RECT rcDevice;
} WINDOWPLACEMENT;
Member
length
Typ: UINT
Die Länge der Struktur in Bytes. Legen Sie vor dem Aufrufen der Funktionen GetWindowPlacement oder SetWindowPlacement dieses Element auf fest sizeof(WINDOWPLACEMENT)
.
GetWindowPlacement und SetWindowPlacement schlagen fehl, wenn dieser Member nicht ordnungsgemäß festgelegt ist.
flags
Typ: UINT
Die Flags, die die Position des minimierten Fensters steuern, und die Methode, mit der das Fenster wiederhergestellt wird. Bei diesem Member kann es sich um einen oder mehrere der folgenden Werte handeln.
showCmd
Typ: UINT
Der aktuelle Anzeigestatus des Fensters. Dies kann jeder der Werte sein, die im Parameter nCmdShow für die Funktion ShowWindow angegeben werden können.
ptMinPosition
Typ: POINT
Die Koordinaten der oberen linken Ecke des Fensters, wenn das Fenster minimiert wird.
ptMaxPosition
Typ: POINT
Die Koordinaten der oberen linken Ecke des Fensters, wenn das Fenster maximiert ist.
rcNormalPosition
Typ: RECT
Die Koordinaten des Fensters, wenn sich das Fenster an der wiederhergestellten Position befindet.
rcDevice
Hinweise
Wenn es sich bei dem Fenster um ein Fenster auf oberster Ebene handelt, das nicht über die WS_EX_TOOLWINDOW Fensterstil verfügt, befinden sich die Koordinaten, die durch die folgenden Member dargestellt werden, in Arbeitsbereichskoordinaten: ptMinPosition, ptMaxPosition und rcNormalPosition. Andernfalls befinden sich diese Member in Bildschirmkoordinaten.
Arbeitsbereichskoordinaten unterscheiden sich von Bildschirmkoordinaten darin, dass sie die Speicherorte und Größen von Anwendungssymbolleisten (einschließlich der Taskleiste) berücksichtigen. Die Arbeitsbereichskoordinate (0,0) ist die obere linke Ecke des Arbeitsbereichsbereichs, wobei der Bereich des Bildschirms nicht von Anwendungssymbolleisten verwendet wird.
Die in einer WINDOWPLACEMENT-Struktur verwendeten Koordinaten sollten nur von den Funktionen GetWindowPlacement und SetWindowPlacement verwendet werden. Das Übergeben von Arbeitsbereichskoordinaten an Funktionen, die Bildschirmkoordinaten erwarten (z. B. SetWindowPos), führt dazu, dass das Fenster an der falschen Stelle angezeigt wird. Wenn sich beispielsweise die Taskleiste oben auf dem Bildschirm befindet, wird das Speichern von Fensterkoordinaten mithilfe von GetWindowPlacement und deren Wiederherstellung mithilfe von SetWindowPos dazu führen, dass das Fenster auf dem Bildschirm "kriechend" angezeigt wird.
Anforderungen
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Kopfzeile | winuser.h (einschließlich Windows.h) |
Siehe auch
Konzept
Referenz