It is not as easy as it sounds.
Because of the way Gui works you need multiple steps:
create the Gui,
Show the Gui,
Wait for user input,
Return to hotstring.
The problem is The Wait For User Input.
The way it usually works is that after Showing the Gui you use a "Return" to wait for user input, if you do that here it will return to the Hotstring and not wait for the User Input.
So you have to use a trick to keep on waiting for the user to enter the data before actually returning to the hotstring, like a loop or while. This is one way (there are others)
Active:=1
; Setup GUI
Gui, Add, Text, ,Variable 1:
Gui, Add, Edit, vVariable1
Gui, Add, Text, ,Variable 2:
Gui, Add, Edit, vVariable2
Gui, Add, Button, gOK, OK
Gui, Add, Button, gCancel, Cancel
F12::Reload
::btw::
Gosub, UserInput
If Active
Send Hello this is %variable1% and %variable2%
Return
UserInput:
Gui, Show, w200 h150, Get user Input
Active:=1
While (WinExist("Get user Input"))
{
Sleep 100
}
Return
OK:
Gui, Submit, Hide
Return
Cancel:
Gui, Hide
Active:=0
Return
If you need more flexibility in the form you could check something like EntryForm() by coco
http://ahkscript.org...opic.php?t=4559 or another method entirely something like
http://www.autohotke...opy-paste-text/