InputBox

Zeigt ein Eingabefenster an, das den Benutzer zur Eingabe einer Zeichenkette auffordert.

InputBox, AusgabeVar , Titel, Anzeigetext, HIDE, Breite, Höhe, X, Y, Locale, Zeitlimit, Standardwert

Parameter

AusgabeVar

Name der Variable, in der die Benutzereingabe gespeichert werden soll.

Titel

Der Titel des Eingabefensters. Wenn dieser Parameter weggelassen wird oder leer ist, wird standardmäßig der aktuelle Name des Skripts verwendet.

Anzeigetext

Text des Eingabefensters, der den Benutzer darauf hinweist, was eingegeben werden soll. Wenn der Anzeigetext relativ lang ist, kann er via Fortsetzungsbereich in mehreren kurzen Zeilen aufgeteilt werden, um die Übersichtlichkeit und Wartbarkeit des Skripts zu erhöhen.

HIDE

Ist dieser Parameter das Wort HIDE, wird die Benutzereingabe mit Maskierungszeichen versteckt - sinnvoll für Passwörter.

Breite

Wenn dieser Parameter weggelassen wird oder leer ist, beginnt das Fenster standardmäßig mit einer Breite von 375 Pixel. Dieser Parameter kann ein Ausdruck sein.

Höhe

Wenn dieser Parameter weggelassen wird oder leer ist, beginnt das Fenster standardmäßig mit einer Höhe von 189 Pixel. Dieser Parameter kann ein Ausdruck sein.

X, Y

Die Koordinaten X und Y des Fensters, die Ausdrücke sein können (mit 0,0 kann das Fenster in die linke obere Ecke des Bildschirms verschoben werden). Wenn eine dieser Koordinaten weggelassen wird oder leer ist, wird das Fenster in dieser Abmessung zentriert. Jede Koordinate kann negativ sein, um das Fenster teilweise oder vollständig über den Bildschirmrand hinaus zu positionieren.

Locale [v1.1.31+]

Wenn dieser Parameter das Wort Locale ist, werden die Schaltflächen OK und Cancel in Abhängigkeit der Sprache des aktuellen Benutzers benannt (z. B. Abbrechen statt Cancel in einem deutschen Betriebssystem). Zudem werden, um diese Namen korrekt darzustellen, die Schaltflächen breiter gemacht und die minimale Breite des Eingabefensters vergrößert. Diese Option ist in AutoHotkey v2 standardmäßig aktiv.

Zeitlimit

Zeitlimit in Sekunden (kann einen Dezimalpunkt enthalten oder ein Ausdruck sein). Wenn ein Zeitlimit höher als 2147483 (24,8 Tage) angegeben ist, wird es automatisch auf 2147483 zurückgesetzt. Nachdem das Zeitlimit überschritten wurde, wird das InputBox-Fenster automatisch geschlossen und ErrorLevel auf 2 gesetzt. AusgabeVar wird weiterhin auf das gesetzt sein, was der Benutzer zuletzt eingegeben hat.

Standardwert

Eine Zeichenkette, die zu Beginn im Eingabefeld von InputBox erscheint, sobald das Dialogfenster das erste Mal angezeigt wird. Der Benutzer kann die Zeichenkette z. B. durch Drücken der Rücktaste ändern.

Fehlerbehandlung

[v1.1.04+]: Dieser Befehl ist in der Lage, bei Misserfolg eine Ausnahme auszulösen. Weitere Informationen finden Sie unter Laufzeitfehler.

ErrorLevel wird auf 1 gesetzt, wenn der Benutzer die CANCEL-Schaltfläche gedrückt hat, auf 0, wenn der Benutzer OK gedrückt hat, oder auf 2, wenn das Dialogfenster die Zeit überschritten hat. In allen drei Fällen wird AusgabeVar auf den eingegebenen Wert gesetzt. Auf diese Weise kann die CANCEL-Schaltfläche neben Abbrechen noch andere Funktionen ausführen, falls der Skript-Entwickler das wünscht.

Bemerkungen

Ein typisches Eingabefenster sieht wie folgt aus:

InputBox

Das Dialogfenster erlaubt den Benutzer, einen beliebigen Text einzugeben und dann OK oder CANCEL (Abbrechen) zu drücken. Der Benutzer kann die Größe des Dialogfensters durch Ziehen des Rahmens ändern.

Ein GUI-Fenster kann ein modales InputBox-Fenster mithilfe von Gui, +OwnDialogs anzeigen. Ein modales InputBox-Fenster hindert den Benutzer daran, mit dem GUI-Fenster zu interagieren, bis er das InputBox-Fenster wieder schließt.

Siehe auch

GUI, Input, MsgBox, FileSelectFile, FileSelectFolder, SplashTextOn, ToolTip

Beispiele

#1

InputBox, Passwort, Bitte Passwort eingeben, (Ihre Eingabe wird versteckt), hide

#2

InputBox, Benutzereingabe, Telefonnummer, Bitte geben Sie eine Telefonnummer ein., , 640, 480
if ErrorLevel
    MsgBox, Sie haben CANCEL gedrückt.
else
    MsgBox, Sie haben "%Benutzereingabe%" eingegeben.