Set Window Rect
Eingeschränkt verfügbar
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
Der Set Window Rect Befehl der WebDriver API ändert die Größe und Position des Betriebssystemfensters, das mit dem aktuellen window verknüpft ist. Der Befehl fungiert als Setter von Get Window Rect, dessen Rückgabeobjekt direkt als Payload für diesen Befehl verwendet werden kann.
Bestimmte Gerätegruppen unterstützen nicht das Einstellen der Fensterabmessungen oder deren Position. In diesen Konfigurationen liefert der Befehl einen unsupported operation-Fehler. Um Situationen zu vermeiden, in denen dieser Befehl zu einem Fehler führen könnte, ist es möglich, ihn bedingt aufzurufen, wenn die Fähigkeit setWindowRect für die Sitzung auf True gesetzt ist.
Die Einstellung des Fenster-Rechtecks erfordert x, y, width und height als Eingaben. Alle Felder sind optional, z.B. kann der Befehl mit einem leeren Objekt aufgerufen werden, in diesem Fall wird er als No-Op fungieren. Um die Position festzulegen, sind sowohl x als auch y erforderlich, und entsprechend sind width und height erforderlich, um die Dimensionen des Fensters zu ändern.
Beim Einstellen der Breite oder Höhe ist nicht garantiert, dass die resultierende Fenstergröße genau der gewünschten entspricht. Der Treiber sollte Werte, die größer als die physischen Bildschirmabmessungen oder kleiner als die Mindestfenstergröße sind, begrenzen. Einige Treiber können auch andere Einschränkungen haben, z.B. dass sie nicht in Ein-Pixel-Schritten vergrößern oder verkleinern können. Aus diesem Grund stimmen die zurückgegebenen Werte für width und height möglicherweise nicht genau mit Window.outerWidth und Window.outerHeight überein.
Das Einstellen der Fensterposition ist ähnlich wie der Aufruf von Window.moveTo(x, y), unterscheidet sich jedoch dadurch, dass es Sicherheitsbeschränkungen im Zusammenhang mit der Fenster-Manipulation umgeht.
Der Set Window Rect Befehl ist blockierend.
Syntax
| Methode | URI-Vorlage |
|---|---|
| POST | /session/{session id}/window/rect |
URL-Parameter
session id-
Identifikator der Sitzung.
Payload
Die Eingabe ist ein WindowRect-Objekt:
x-
Horizontale Position des
window, dieWindow.screenXentspricht. Muss eine Zahl im Bereich von −(2^31) bis 2^31 − 1, null oder undefiniert sein. y-
Vertikale Position des
window, dieWindow.screenYentspricht. Muss eine Zahl im Bereich von −(2^31) bis 2^31 − 1, null oder undefiniert sein. width-
Außenbreite des
window, dieWindow.outerWidthentspricht. Muss eine Zahl im Bereich von 0 bis 2^31 − 1, null oder undefiniert sein. height-
Außenhöhe des
window, dieWindow.outerHeightentspricht. Muss eine Zahl im Bereich von 0 bis 2^31 − 1, null oder undefiniert sein.
Antwort
Die Antwort-Payload ist ein WindowRect:
x-
Horizontale Position des Betriebssystemfensters, das mit
windowverknüpft ist, entsprechendWindow.screenX. y-
Vertikale Position des Betriebssystemfensters, das mit
windowverknüpft ist, entsprechendWindow.screenY. width-
Breite der äußeren Grenzen des Betriebssystemfensters, das mit
windowverknüpft ist, entsprechendWindow.outerWidth. height-
Höhe der äußeren Grenzen des Betriebssystemfensters, das mit
windowverknüpft ist, entsprechendWindow.outerHeight.
Fehler
invalid argument-
Wenn eines der Felder im
WindowRect-Payload-Objekt nicht den Typ- oder Bereichsbeschränkungen entspricht, oder wenn nur eines der Felderpaarex/yoderwidth/heightangegeben ist. invalid session id-
Sitzung existiert nicht.
no such window-
Wenn das
windowgeschlossen wurde. unexpected alert open-
Ein Benutzerhinweis, wie beispielsweise
window.alert, blockiert die Ausführung des Befehls, bis damit umgegangen wird. unsupported operation-
Wenn der Treiber das Ändern der Fenstergröße oder -position nicht unterstützt. Dies ist normalerweise der Fall bei Mobilgeräten, bei denen der Browser feste Abmessungen hat und nicht auf dem Bildschirm verschoben werden kann.
Sie können die Fähigkeit
setWindowRectinspizieren, um festzustellen, ob das Gerät diesen Befehl unterstützt.
Spezifikationen
| Spezifikation |
|---|
| WebDriver> # set-window-rect> |
Browser-Kompatibilität
Siehe auch
WebWindow-Objekt- Verwandte Befehle: