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 mit dem aktuellen window
verbundenen Betriebssystemfensters. Der Befehl fungiert als Setter des Get Window Rect, dessen Rückgabeobjekt direkt als Nutzdaten für diesen Befehl verwendet werden kann.
Bestimmte Gerätegruppen unterstützen nicht das Setzen der Fensterabmessungen oder deren Position. In diesen Konfigurationen gibt der Befehl einen unsupported operating Fehler zurück. Um Situationen zu vermeiden, in denen dieser Befehl zu einem Fehler führen könnte, ist es möglich, ihn bedingt aufzurufen, wenn die setWindowRect
-Fähigkeit für die Sitzung auf true gesetzt ist.
Das Setzen des Fensterrechtecks benötigt x
, y
, width
und height
als Eingaben. Alle Felder sind optional, z.B. kann der Befehl mit einem leeren Objekt aufgerufen werden, was in diesem Fall als No-Op fungiert. Um die Position zu setzen, sind sowohl x
als auch y
erforderlich, und entsprechend sind sowohl width
als auch height
erforderlich, um die Abmessungen des Fensters zu ändern.
Beim Setzen der Breite oder Höhe ist nicht garantiert, dass die resultierende Fenstergröße genau der gewünschten entspricht. Der Treiber soll Werte klemmen, die größer sind als die physischen Bildschirmabmessungen oder kleiner als die Mindestgröße des Fensters. Einige Treiber können auch andere Einschränkungen haben, wie z.B. das nicht in Einzelpixel-Schritten verkleinern zu können. Aus diesem Grund könnten die zurückgegebenen width
und height
nicht genau mit Window.outerWidth
und Window.outerHeight
übereinstimmen.
Das Setzen der Fensterposition ist ähnlich dem Aufruf von Window.moveTo(x, y)
, unterscheidet sich jedoch dadurch, dass Sicherheitsbeschränkungen in Bezug auf die Fensterbearbeitung umgangen werden.
Der Befehl Set Window Rect ist blockierend.
Syntax
Methode | URI-Vorlage |
---|---|
POST | /session/{session id}/window/rect |
URL-Parameter
session id
-
Kennung der Sitzung.
Nutzdaten
Die Eingabe ist ein WindowRect
Objekt:
x
-
Horizontale Position des
window
, was gleichwertig mitWindow.screenX
ist. Muss eine Zahl im Bereich von −(2^31) bis 2^31 − 1, null oder undefiniert sein. y
-
Vertikale Position des
window
, was gleichwertig mitWindow.screenY
ist. Muss eine Zahl im Bereich von −(2^31) bis 2^31 − 1, null oder undefiniert sein. width
-
Äußere Breite des
window
, was gleichwertig mitWindow.outerWidth
ist. Muss eine Zahl im Bereich von 0 bis 2^31 − 1, null oder undefiniert sein. height
-
Äußere Breite des
window
, was gleichwertig mitWindow.outerHeight
ist. Muss eine Zahl im Bereich von 0 bis 2^31 − 1, null oder undefiniert sein.
Antwort
Die Antwortnutzdaten sind ein WindowRect
:
x
-
Horizontale Position des mit
window
verbundenen Betriebssystemfensters, was gleichwertig mitWindow.screenX
ist. y
-
Vertikale Position des mit
window
verbundenen Betriebssystemfensters, was gleichwertig mitWindow.screenY
ist. width
-
Breite der äußeren Grenzen des mit
window
verbundenen Betriebssystemfensters, was gleichwertig mitWindow.outerWidth
ist. height
-
Höhe der äußeren Grenzen des mit
window
verbundenen Betriebssystemfensters, was gleichwertig mitWindow.outerHeight
ist.
Fehler
- Ungültiges Argument
-
Wenn eines der Felder im
WindowRect
Nutzdatenobjekt nicht die Typ- oder Bereichseinschränkungen erfüllt oder wenn nur eines derx
/y
Paar- oderwidth
/height
Paarfelder angegeben ist. - Ungültige Sitzungs-ID
-
Sitzung existiert nicht.
- Kein solches Fenster
-
Wenn das
window
geschlossen wurde. - Unerwartetes geöffnetes Alert
-
Eine Benutzereingabeaufforderung, wie z.B.
window.alert
, blockiert die Ausführung des Befehls, bis sie verarbeitet wird. - Nicht unterstützte Operation
-
Wenn der Treiber das Ändern der Fenstergröße oder -position nicht unterstützt. Dies ist in der Regel bei mobilen Geräten der Fall, bei denen der Browser eine feste Größe hat und nicht auf dem Bildschirm verschoben werden kann.
Sie können die
setWindowRect
-Fähigkeit untersuchen, um festzustellen, ob das Gerät diesen Befehl unterstützt.
Spezifikationen
Specification |
---|
WebDriver # set-window-rect |
Browser-Kompatibilität
Siehe auch
-
WebWindow
Objekt -
Zugehörige Befehle: