- Offizieller Beitrag
Hallo
[autoit]MsgBox(0,"",@AutoItVersion)
[/autoit]Starte das mal. Steht da 3.2.10.0 oder steht da 3.2.11.0/3.2.11.1?
Mfg Spider
Hallo
[autoit]MsgBox(0,"",@AutoItVersion)
[/autoit]Starte das mal. Steht da 3.2.10.0 oder steht da 3.2.11.0/3.2.11.1?
Mfg Spider
3.2.10.0
Hi Chris,
ich habe das Script mal ausprobiert, geht bei mir eigentlich. Nur die Farbabfrage If PixelGetColor(104, 740) = 0x101410 Then geht bei mir nicht, der Rest funzt.
Ein Problem habe ich allerdings gesehen. Wenn ich über die GUI dann wieder Stop clicke, dauert es ewig bis das Script das auch verarbeitet.
Irgendwie scheint der Windowseventhandler die Events zuspeichern und nur häppchenweise an autoit weiterzureichen. Oder halt irgendwie so. Oder anders. Jedenfalls clicke ich stop und er läuft noch 20 mal oder so durch die Schleife statt anzuhalten.
PS: Zum besseren Debuggen habe ich das Script leicht modifieziert:
#include
$Form1_1 = GUICreate("Multibot v. 1.2 Made bei Chris", 170, 140, 360, 424)
$Group1 = GUICtrlCreateGroup("Autopot´s", 0, 0, 137, 89)
$chkRot = GUICtrlCreateCheckbox("Rote Pot´s", 8, 24, 97, 17)
$chkBlau = GUICtrlCreateCheckbox("Blaue Pot´s", 8, 48, 97, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$cmdStart = GUICtrlCreateButton("Start", 0, 105, 73, 25, 0)
$cmdStop = GUICtrlCreateButton("Stop", 88, 105, 75, 25, 0)
GUICtrlSetState(-1, $GUI_DISABLE)
GUISetState(@SW_SHOW)
$checkthepixel = False
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $cmdStart
GUICtrlSetState($cmdStart, $GUI_DISABLE)
GUICtrlSetState($cmdStop, $GUI_ENABLE)
$checkthepixel = True
Case $cmdStop
GUICtrlSetState($cmdStop, $GUI_DISABLE)
GUICtrlSetState($cmdStart, $GUI_ENABLE)
$checkthepixel = False
Case Else
ConsoleWrite ("Message ist: "&$nMsg&@CRLF)
EndSwitch
If $checkthepixel = True Then CheckPixel()
Sleep(250)
WEnd
Func CheckPixel()
If BitAND(GUICtrlRead($chkRot), $GUI_CHECKED) Then
ConsoleWrite ("Rot ist an"&@CRLF)
If PixelGetColor(104, 740) = 0x101410 Then
For $i = 1 To 6
ControlSend("Unbenannt - Editor", "", "Edit1", "1{ENTER}") ;ist für die roten pots
Next
EndIf
EndIf
If BitAND(GUICtrlRead($chkBlau), $GUI_CHECKED) Then
ConsoleWrite ("Rot ist an"&@CRLF)
If PixelGetColor(78, 751) = 0x101410 Then
For $i = 1 To 4
$E = ControlSend("Unbenannt - Editor", "", "Edit1", "2{ENTER}") ;ist für die blauen pots
If Not $E Then $i += 1
Next
EndIf
EndIf
If BitAND(GUICtrlRead($chkRot), $GUI_CHECKED) Or _
BitAND(GUICtrlRead($chkBlau), $GUI_CHECKED) Then
ControlSend("Unbenannt - Editor", "", "Edit1", "Pause{ENTER}")
Sleep(1000)
EndIf
EndFunc ;==>CheckPixel
</GUIConstants.au3>
bei mir kommt da immer ne meldenung mit diesem inhalt
C:\Dokumente und Einstellungen\Christian\Desktop\Neuer Ordner\Multibot v.1.0 Made bei chris1.au3(9,33) : WARNING: $GUI_DISABLE: possibly used before declaration.
GUICtrlSetState(-1, $GUI_DISABLE)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
C:\Dokumente und Einstellungen\Christian\Desktop\Neuer Ordner\Multibot v.1.0 Made bei chris1.au3(15,30) : WARNING: $GUI_EVENT_CLOSE: possibly used before declaration.
Case $GUI_EVENT_CLOSE
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
C:\Dokumente und Einstellungen\Christian\Desktop\Neuer Ordner\Multibot v.1.0 Made bei chris1.au3(19,50) : WARNING: $GUI_ENABLE: possibly used before declaration.
GUICtrlSetState($cmdStop, $GUI_ENABLE)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
C:\Dokumente und Einstellungen\Christian\Desktop\Neuer Ordner\Multibot v.1.0 Made bei chris1.au3(33,49) : WARNING: $GUI_CHECKED: possibly used before declaration.
If BitAND(GUICtrlRead($chkRot), $GUI_CHECKED)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
C:\Dokumente und Einstellungen\Christian\Desktop\Neuer Ordner\Multibot v.1.0 Made bei chris1.au3(9,33) : ERROR: $GUI_DISABLE: undeclared global variable.
GUICtrlSetState(-1, $GUI_DISABLE)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
C:\Dokumente und Einstellungen\Christian\Desktop\Neuer Ordner\Multibot v.1.0 Made bei chris1.au3 - 1 error(s), 4 warning(s)
Alles anzeigen
Beim Copy-Paste ist leider das #include zerhackt worden. Du mußt wieder die GUIconstants.au3 includen
Beim 'Paste' hier ins Board musst Du in den Quellcode-Modus wechseln, dann klappt das auch mit den Includes.