Set Window Rect
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Der Set Window Rect Befehl der WebDriver API ändert die Größe und Position des Betriebssystemfensters, das mit dem aktuellen window verbunden ist. Der Befehl fungiert als Setter für Get Window Rect, dessen Rückgabeobjekt direkt als Nutzlast für diesen Befehl verwendet werden kann.
Bestimmte Gerätetypen unterstützen das Setzen der Fensterabmessungen oder -position nicht. In diesen Fällen wird der Befehl einen unsupported operating Fehler zurückgeben. Um zu vermeiden, dass dieser Befehl einen Fehler verursacht, kann er bedingt aufgerufen werden, wenn die setWindowRect Fähigkeit für die Sitzung auf true gesetzt ist.
Das Setzen des Fensterrechtecks erfordert x, y, width und height als Eingaben. Alle Felder sind optional, z.B. kann der Befehl mit einem leeren Objekt aufgerufen werden, wobei er in diesem Fall keine Wirkung hat. Um die Position festzulegen, sind sowohl x als auch y erforderlich, und entsprechend sind sowohl width als auch height notwendig, um die Fensterabmessungen zu ändern.
Beim Einstellen der Breite oder Höhe ist nicht garantiert, dass die resultierende Fenstergröße genau der angeforderten entspricht. Der Treiber sollte Werte, die über den physischen Bildschirmabmessungen liegen, einschränken, oder die kleiner als die Mindestfenstergröße sind. Einige Treiber können auch andere Einschränkungen wie das nicht-Resize in einzelnen Pixelinkrementen haben. Aus diesem Grund könnten die zurückgegebenen width und height nicht genau mit Window.outerWidth und Window.outerHeight übereinstimmen.
Das Einstellen der Fensterposition ähnelt dem Aufrufen von Window.moveTo(x, y), unterscheidet sich jedoch dadurch, dass Sicherheitsbeschränkungen im Zusammenhang mit der Fenstermanipulation umgangen werden.
Der Befehl Set Window Rect ist blockierend.
Syntax
| Methode | URI-Vorlage |
|---|---|
| POST | /session/{session id}/window/rect |
URL-Parameter
session id-
Identifikator der Sitzung.
Nutzlast
Die Eingabe ist ein WindowRect Objekt:
x-
Horizontale Position des
window, was demWindow.screenXentspricht. Muss eine Zahl im Bereich von −(2^31) bis 2^31 − 1, null, oder undefiniert sein. y-
Vertikale Position des
window, was demWindow.screenYentspricht. Muss eine Zahl im Bereich von −(2^31) bis 2^31 − 1, null, oder undefiniert sein. width-
Äußere Breite des
window, was demWindow.outerWidthentspricht. Muss eine Zahl im Bereich von 0 bis 2^31 − 1, null, oder undefiniert sein. height-
Äußere Breite des
window, was demWindow.outerHeightentspricht. Muss eine Zahl im Bereich von 0 bis 2^31 − 1, null, oder undefiniert sein.
Antwort
Die Antwortnutzlast ist ein WindowRect:
x-
Horizontale Position des Betriebssystemfensters, das mit
windowverbunden ist, was demWindow.screenXentspricht. y-
Vertikale Position des Betriebssystemfensters, das mit
windowverbunden ist, was demWindow.screenYentspricht. width-
Breite der äußeren Grenzen des Betriebssystemfensters, das mit
windowverbunden ist, was demWindow.outerWidthentspricht. height-
Höhe der äußeren Grenzen des Betriebssystemfensters, das mit
windowverbunden ist, was demWindow.outerHeightentspricht.
Fehler
- Ungültiges Argument
-
Wenn eines der Felder im
WindowRectNutzlastobjekt nicht den Typ- oder Bereichsbeschränkungen entspricht oder wenn nur eines der Felderx/y-Paar oderwidth/height-Paar angegeben ist. - Ungültige Sitzungs-ID
-
Sitzung existiert nicht.
- Kein solches Fenster
-
Wenn das
windowgeschlossen wurde. - Unerwartetes geöffnetes Fenster
-
Ein Benutzerprompt, wie zum Beispiel
window.alert, blockiert die Ausführung des Befehls, bis er behandelt wird. - Nicht unterstützte Operation
-
Wenn der Treiber nicht unterstützt, die Größe oder Position des Fensters zu ändern. Dies ist normalerweise bei mobilen Geräten der Fall, bei denen der Browser eine feste Dimension hat und nicht auf dem Bildschirm verschoben werden kann.
Sie können die
setWindowRectFähigkeit überprüfen, um festzustellen, ob das Gerät diesen Befehl unterstützt.
Spezifikationen
| Specification |
|---|
| WebDriver> # set-window-rect> |
Browser-Kompatibilität
Siehe auch
WebWindowObjekt- Zugehörige Befehle: