BOOLSetWindowPos (constCWnd *pWndInsertAfter,IntX,Inty,IntCx,Intcy,nFlagsUINT);
Rückgabewert
Ungleich NULL, wenn die Funktion erfolgreich ist; andernfalls 0.
Parameter
pWndInsertAfter
Bezeichnet das CWnd -Objekt, das diese CWnd -Objekt in der Z-Reihenfolge stehen wird. Dieser Parameter kann ein Zeiger auf ein CWnd oder ein Zeiger auf einen der folgenden Werte sein.:
Finden Sie im Abschnitt "Hinweise" für diese Funktion für Regeln darüber, wie dieser Parameter verwendet wird.
x
Gibt die neue Position des linken Randes des Fensters.
y
Gibt die neue Position des oberen Rand des Fensters.
cx
Gibt die neue Breite des Fensters.
cy
Gibt die neue Höhe des Fensters.
nFlags
Größenänderung und Positionierung von Optionen gibt. Dieser Parameter kann eine Kombination der folgenden Optionen sein.:
Bemerkungen
Rufen Sie diese Memberfunktion um die Größe, die Position und die Z-Reihenfolge von untergeordneten, Pop-up und Top-Level-Fenster ändern.
Windows werden auf dem Bildschirm entsprechend ihrer Z-Reihenfolge bestellt; Das Fenster am oberen Rand der Z-Reihenfolge über allen anderen Fenstern in der Reihenfolge angezeigt.
Alle Koordi&naten für untergeordnete Fenster sind Client Koordinaten (bezogen auf die obere linke Ecke des Clientbereichs des übergeordneten Fensters) .nbsp;
Ein Fenster kann verschoben werden, an die Spitze der Z-Reihenfolge entweder durch Festlegen des Parameters pWndInsert&After Amp; WndTopMost und die Gewährleistung, die der SWP_NOZORDER flag nicht festgelegt ist oder durch ein Fenster-Z-Reihenfolge festlegen, so dass es über alle vorhandenen oberste Fenster ist. Wenn ein nontopmost Fenster oberste erfolgt, werden auch zugehörigen Besitzfenster oberste gemacht. Die Besitzer werden nicht geändert.
Ein oberstes Fenster ist nicht mehr oberste, wenn es an der Unterseite (&Amp; WndBottom) der Z-Reihenfolge oder nach einem beliebigen nontopmost Fenster positioniert ist. Wenn ein oberstes Fenster nontopmost erfolgt, sind alle seine Besitzer und zugehörigen Besitzfenster auch nontopmost Windows gemacht.
Wenn weder SWP_NOACTIVATE noch SWP_NOZORDER angegeben ist (d. h., wenn die Anwendung anfordert, dass gleichzeitig ein Fenster aktiviert und in der angegebenen Z-Reihenfolge platziert werden), wird der im pWndInsertAfter angegebene Wert nur unter den folgenden Umständen verwendet.:
Eine Anwendung kann kein inaktives Fensters aktivieren, ohne dass es auch an der Spitze der Z-Reihenfolge. Anwendungen können die Z-Reihenfolge eines aktivierten Fensters ohne Einschränkungen ändern.
Ein nontopmost Fenster kann selbst ein oberstes Fenster, aber nicht umgekehrt. Alle Fenster (z. B. ein Dialogfeld) im Besitz von einem obersten Fenster ist selbst ein oberstes Fenster, um sicherzustellen, dass alle gehört, dass Windows über ihre Besitzer bleiben.
Mit Windows-Versionen 3.1 und höher werden Windows an den Anfang der Z-Reihenfolge verschoben und es durch ihre WS_EX_TOPMOST Stile festlegen gesperrt. Ein oberstes Fenster behält seine oberste Position selbst wenn deaktiviert. Z. B. Auswahl des Befehls WinHelp immer im Vordergrund macht das oberste Hilfefenster, und es dann bleibt sichtbar, wenn Sie zu einer Anwendung zurückkehren.
Um ein oberstes Fenster erstellen, rufen Sie SetWindowPos mit dem pWndInsert&After -Parameter gleich Amp; WndTopMost, oder legen Sie den WS_EX_TOPMOST -Stil, wenn Sie das Fenster erstellen.
Wenn die Z-Reihenfolge alle Fenster mit dem WS_EX_TOPMOST -Stil enthält, wird ein Fenster mit dem &Amp; WndTopMost Wert verschoben an der Spitze aller nontopmost Fenster, aber unten keine oberste Fenster platziert. Wenn eine Anwendung ein inaktives Fensters ohne das WS_EX_TOPMOST Bit aktiviert, wird das Fenster über alle nontopmost Fenster aber unter alle obersten Fenster verschoben.
Wenn SetWindowPos aufgerufen wird, wenn der pWndInsert&After -Parameter Amp; WndBottom ist CWnd ein oberstes Fenster ist, Fenster seinen obersten Status verliert (WS_EX_TOPMOST deaktiviert ist) und das System das Fenster am unteren Rand der Z-Reihenfolge schaltet.
CWnd Übersicht |nbsp; Member der Klasse | Hierarchiediagramm
Siehe auch&Nbsp; :: DeferWindowPos, :: SetWindowPos