|
You last visited: Today at 20:29
Advertisement
AutoIT Frage
Discussion on AutoIT Frage within the AutoIt forum part of the Coders Den category.
10/18/2011, 19:40
|
#1
|
elite*gold: 0
Join Date: Oct 2011
Posts: 43
Received Thanks: 0
|
AutoIT Frage
Hallo,
wie kann ich in autoIt eine InputBox erstellen, die wenn keine Eingabe erfolgt nach einer bestimmten Zeit wieder verschwindet. Aber wenn eine Eingabe erfolgt, die Eingabe des Textes abwartet und dann ganz normal fortfährt?
Vielen Dank!!
|
|
|
10/18/2011, 20:40
|
#2
|
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,254
|
InputBox("gib was ein", "du hast nur 5 sec zeit!", "", "", "", "", "", "", 5)
...
|
|
|
10/18/2011, 21:12
|
#3
|
elite*gold: 0
Join Date: Apr 2010
Posts: 9,696
Received Thanks: 1,810
|
Hier suchen und die Parameter anschauen..
-> InputBox -> timeout [optional] How many seconds to wait before automatically cancelling the InputBox.
|
|
|
10/18/2011, 21:37
|
#4
|
elite*gold: 0
Join Date: Oct 2011
Posts: 43
Received Thanks: 0
|
super. vor allem so einen link hab ich schon lange gesucht!
Aber: geht es auch, dass das Timeout sich abschaltet sobald was eingegeben wird? Also so das man einen langen Text schreiben kann wenn man will und wenn nicht, dass es dann einfach weiter geht?!
Würde mich über eine Lösung sehr freuen!
Danke!
|
|
|
10/18/2011, 22:16
|
#5
|
elite*gold: 0
Join Date: Oct 2010
Posts: 51
Received Thanks: 12
|
du machst deine eigene Inputbox als kleines GUI mit Koda, die kannst du dann beliebig mit Timern schließen oder offen lassen wie du willst...
hier mal als Beispiel:
PHP Code:
#include <EditConstants.au3> #include <GUIConstantsEx.au3> #include <StaticConstants.au3> #include <WindowsConstants.au3> #Region ### START Koda GUI section ### Form= $Form1 = GUICreate("Inputbox", 349, 61, 230, 158) $Input1 = GUICtrlCreateInput("Input1", 8, 32, 337, 21) $Label1 = GUICtrlCreateLabel("Bla bli blubb", 8, 8, 61, 17) GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ###
GUIRegisterMsg($WM_COMMAND, "MsgCallback") $close = 1 $Timer = TimerInit()
While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit
EndSwitch
If TimerDiff($Timer) > 5000 AND $close = 1 Then Exit EndIf
WEnd
Func MsgCallback($hWnd, $Msg, $wParam, $lParam) If $wParam = BitShift($EN_CHANGE, -16) + $Input1 Then $close = 0 EndIf EndFunc
Das mit MsgCallback ist für den Anfang evtl etwas kompliziert und von mir selber auch grade nur kopiert (passt grad zu gut)
Grob gesagt überprüft die Funktion ob im $Input1 was geändert wurde, den Rest kannst du dir sicherlich denken
|
|
|
All times are GMT +2. The time now is 20:29.
|
|