[GUI]Tastendruck nach Timer klappt nicht

05/28/2012 20:12 piper332#1
Hey ich wollte, dass nachdem die Checkbox "Drop" aktiviert wurde, dass dann "x" gedrückt wird, aber iwie funktioniert das nicht. Ich hoffe jmd. weiß, was ich falsch gemacht hab =)
Hier der Code:
Code:
#include <GUIConstantsEx.au3>
global $countindf = 0, $count = 0
$Gui = GUICreate("NosBot", 250, 250, 500, 250)
$drop = GUICtrlCreateCheckbox("Drop", 10, 50, 120, 20)
$sa = GUICtrlCreateCheckbox("Direkt an Nostale senden", 10, 75, 150, 20)
$label = GUICtrlCreateLabel("NosBot",90, 10, 70, 35)
GUICTRLSETFONT(-1,15,800,5)

GUISetState()
While 1
	$droprd = GUICtrlRead($drop)
	$sard = GUICtrlRead($sa)
	$msg = GUIGetMsg()
	Select
		Case $msg = -3
			ExitLoop
		EndSelect
$count += 4
$countindf += 4
If $countindf = 300 and $sard = 1 and $droprd = 1 Then
	$countindf = 0
	ControlSend("NosTale", "", "", "{x}")
EndIf
If $count = 300 and $sard = 4 and $droprd = 1 Then
	$count = 0
	Send("{x}")
EndIf		
WEnd
Danke schonmal =)
05/28/2012 21:53 KDeluxe#2
Für was soll das hochzählen gut sein? Du hast überhaupt kein Sleep in deiner Schleife, der Wert von 300 ist schneller erreicht, als dass der User die Checkbox auswählt, deshalb trifft die Bedingung auch nie zu. Frag ob, ob der Wert über 300 ist und nicht 300. Die Verwendung eines richtigen Timers wäre aber besser, da dieser "Timer" sehr ungenau ist.

[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
05/29/2012 10:28 piper332#3
Ahh.. Danke.. ich hab es mir mal durchgelesen, jetzt klappt die ganze Sache auch soweit =)
Mit Sleep wollte ich nicht arbeiten, da das das Script blockiert..
Hier der Code, falls jmd. das selbe Problem hat.
05/29/2012 18:08 KDeluxe#4
Dein Code sieht aber schlampig aus. Wenn die Bedingung zutrifft und die Checkbox "Drop" ausgewählt wurde, kannst du im Anweisungsblock eine weitere Abfrage erstellen, ob die Checkbox "Direkt..." ausgewählt wurde.


Wenn du dir evtl. mal eine Hochsprache aneignen möchtest, solltest du dir gleich angewöhnen "==" als Vergleichsoperator zu benutzen, "=" ist ein Zuweisungsoperator. Das ist ein häufiger Anfängerfehler bei einem Umstieg.