2017-08-31 12 views
3

Ich habe ein AutoHotkey-Skript, das mehrere Zeilen von Mitarbeiterdaten von einem Benutzer lesen muss.Wie kann ich mehrere Zeilen der Benutzereingabe in AutoHotkey lesen?

InputBox, userInput, Employee Records, Please enter employee records. (One per line) 

Leider ein InputBox erlaubt nur Benutzern eine einzige Zeile Text einzugeben. Wenn Sie versuchen, Zeilenumbrüche mit einzugeben, geben Sie stattdessen ein, um alle Daten einzugeben, die eingegeben wurden.

Wie kann ich mehrere Zeilen der Benutzereingabe in einem AutoHotkey-Skript aufnehmen?

user input

Antwort

2

Dies implementiert eine allgemeine mehrzeiliges Eingabefunktion

F3::MsgBox % MultiLineInput("Employee Records", "Please enter employee records (One per line):") 

MultiLineInput(title, prompt) 
{ 
    static input 
    input := "" 
    Gui, Add, Text,, %prompt% 
    Gui, Add, Edit, w400 h60 vinput 
    Gui, Add, Button, gokay_pressed, Okay 
    Gui, Add, Button, cancel X+8 YP+0, Cancel 
    Gui, Show, Center autosize, %title% 
    WinWaitClose %title% 
    return input 

    okay_pressed: 
    Gui Submit 
    Gui Destroy 
    return 

    GuiClose: 
    GuiEscape: 
    ButtonCancel: 
    Gui, Destroy 
    return 
} 
+0

gebundene Variablen müssen statisch oder global sein –

+0

MultiLineInput() gibt die Benutzereingabe als Zeichenfolge zurück, auch wenn Abbrechen ausgewählt wurde. –

+0

Wären Sie daran interessiert, dies als eine Bibliothek auf GitHub zu hosten? Ich habe festgestellt, dass ich diese Funktion oft benutze und würde gerne helfen, sie weiter zu entwickeln. –

2

Dies zeigt ein mehrzeiliges Eingabefeld

F2:: 
    Gui, Add, Text,, Please enter employee records (One per line): 
    Gui, Add, Edit, w600 h60 vinput 
    Gui, Add, Button, gokay_pressed, Okay 
    Gui, Add, Button, cancel X+8 YP+0, Cancel 
    Gui, Show, Center autosize, Employee Records 
    Return 

okay_pressed: 
    Gui Submit 
    Gui Destroy 
    MsgBox %input% 
    Return 

GuiClose: 
GuiEscape: 
ButtonCancel: 
    Gui, Destroy 
    return 

enter image description here

Verwandte Themen