Hallo an alle.
Ich versuche versuche ein Timer in mein Script einzubauen der anzeigt wie lange es läuft nur scheitere ich an der Umsetzung
ich habe es mal einfach über die Sleep Funktion gemacht und es wird mir in einem Tooltip angezeigt.
aber ich meine die Sleep Funktion in einer schleife ist doch kein richtiger Timer oder irre ich mich da o0 ?
Weil es in der schleife ist kann ich mein eigentlich Script nicht zum laufen bringen, soweit ich weiß können ja keine 2 schleifen gleichzeitig laufen oder ?.
Spoiler anzeigen
Mein Script hat eine kleine GUI sobald ich es starte soll er auch sofort los legen, alles ist in einer schleife.
while 1
mauseclick hir und da
msg box
blabla
wend
Wegen der GUI steht folgender code damit der X knopf an der GUI auch funktioniert
Spoiler anzeigen
Wie ich das verstanden habe überwacht die GUI den X Knopf ob es gedrückt wird oder nicht damit es sich selbst schließen kann
weil es in der schleife ist geht es auch nicht zur eigentlichen haupt Funktion rüber.
Ich möchte den Script mit Hotkeys ansteuern und keine Buttons haben aber trotzdem soll der X Knopf funktionieren wie setze ich das um ?
Momentan sieht mein Code so aus ohne Timer
Haupt Code
#include <ImageSearch2015.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#RequireAdmin
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 259, 157, 192, 124)
$Label1 = GUICtrlCreateLabel("Running Time", 56, 0, 155, 33)
GUICtrlSetFont(-1, 18, 400, 0, "MS Sans Serif")
$timeer = GUICtrlCreateLabel("00 : 00 : 00", 56, 32, 158, 33, $SS_CENTER)
GUICtrlSetFont(-1, 18, 400, 0, "MS Sans Serif")
$okay = 0
$notokay = 0
$Label2 = GUICtrlCreateLabel("Loop Count 1: " & $okay, 40, 80, 130, 24)
GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
$Label3 = GUICtrlCreateLabel("Loop Count 2: " & $notokay, 40, 112, 130, 24)
GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
$Label4 = GUICtrlCreateLabel("END = Exit !", 192, 136, 62, 17)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
Global $paused = FALSE
HotKeySet( "{DEL}", "TogglePause")
HotKeySet ("{END}", "_exit")
Func _exit()
Exit
EndFunc
$x = 0
$y = 0
$icon = "icon.png"
$mspeed = 5
While 1
Do
$result = _ImageSearch($icon, 1, $x, $y , 150, 0)
If $result <> 1 Then Sleep(1000)
Until $result = 1
if $result = 1 Then
$okay = $okay + 1
GUICtrlSetData($Label2, "Loop count 1 :" & $okay)
Sleep(20)
MouseClick("left", 430, 230, 1, $mspeed)
Sleep(500)
_color()
Sleep(100)
MsgBox($MB_SYSTEMMODAL, "Hallo Welt", "Hallo Erdling", 5)
MouseClick("left", 900, 330, 1, $mspeed)
Sleep(500)
$result = 0
EndIf
WEnd
Func _color()
Sleep(500)
$colorcheck = PixelGetColor(436,109)
if $colorcheck = 0x092531 Then
Do
$pos = PixelSearch ( 240, 100, 1380, 744, 0xFDFDFD)
MouseClick( "left" , $pos[0], $pos[1], 1, 50)
Sleep(500)
Until $colorcheck = 0x207DA8
$notokay = $notokay + 1
GUICtrlSetData($Label3, "Loop count 2: " & $notokay)
Else
Tooltip("NO ERROR :D", 0, 0)
Sleep(500)
EndIf
EndFunc
Func TogglePause()
$paused = Not $paused
While $paused
Sleep(100)
ToolTip('PROGRAM IS PAUSED', 0, 0)
WEnd
EndFunc
Alles anzeigen
Ich würde mich über eure Hilfe freuen