Kleines Problem mit meinem Script

02/02/2010 15:35 Visonar#1
Kleines Problem mit meinem Script
Hallo,
Ich habe mir letzens ein kleines "Test-Script" gebastelt.

Funktion:
Durch anklicken drei verschiedener Checkboxen kann man zwischen "a", "b", und/oder "c" wählen. Nach dem Start werden dann die entsprechenden Buchstaben geschrieben, wie gewählt.

Hier das Script:

Quote:
#include <GUIConstants.au3>

#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 315, 120, 193, 122)
$Checkbox1 = GUICtrlCreateCheckbox("a", 8, 0, 25, 41)
$Checkbox2 = GUICtrlCreateCheckbox("b", 8, 48, 25, 25)
$Checkbox3 = GUICtrlCreateCheckbox("c", 8, 88, 25, 17)
$Button1 = GUICtrlCreateButton("Alle Makieren", 48, 24, 121, 25, 0)
$Button2 = GUICtrlCreateButton("Keine markieren", 48, 72, 121, 25, 0)
$Button3 = GUICtrlCreateButton("Start", 176, 24, 121, 25, 0)
$Button4 = GUICtrlCreateButton("Beenden", 176, 72, 121, 25, 0)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit

Case $Button1
GUICtrlSetState($Checkbox1, $GUI_CHECKED)
GUICtrlSetState($Checkbox2, $GUI_CHECKED)
GUICtrlSetState($Checkbox3, $GUI_CHECKED)
GUICtrlSetState($Checkbox4, $GUI_CHECKED)
Case $Button2
GUICtrlSetState($Checkbox1, $GUI_UNCHECKED)
GUICtrlSetState($Checkbox2, $GUI_UNCHECKED)
GUICtrlSetState($Checkbox3, $GUI_UNCHECKED)
GUICtrlSetState($Checkbox4, $GUI_UNCHECKED)
Case $Button3
If GUICtrlRead($Checkbox1) = $GUI_CHECKED Then
Sleep(2000)
Send("{a}")
ElseIf GUICtrlRead($Checkbox1) = $GUI_UNCHECKED Then
Sleep(1)
If GUICtrlRead($Checkbox2) = $GUI_CHECKED Then
Sleep(2000)
Send("{b}")
ElseIf GUICtrlRead($Checkbox1) = $GUI_UNCHECKED Then
Sleep(1)
If GUICtrlRead($Checkbox3) = $GUI_CHECKED Then
Sleep(2000)
Send("{c}")
ElseIf GUICtrlRead($Checkbox1) = $GUI_UNCHECKED Then
Sleep(1)
EndIf
Case $Button4
Exit
EndSwitch
WEnd
Mein Problem ist jetzt aber: Wenn ich das Script starten möchte, kommt folgende Fehlermeldung (hier ein Bild dazu):

Kostenloser Bilder Upload Service - Gratis Bilder hochladen / uploaden ohne Anmeldung

Hmm, was könnte ich nur tun?

Naja, vllt. kann mir da ja einer helfen. Wer hilft, erhält ein THX als Belohnung
Also...

MFG
02/02/2010 19:44 | Moep |#2
Du machst drei Ifs auf, machst aber nur ein If wieder zu.
Außerdem hast du noch nen par logik Fehler drinne, aber die laß ich dichmal selber finden ;)
02/02/2010 19:47 sulak#3
Der Link zum Bild klappt nicht
02/02/2010 20:35 Visonar#4
Quote:
Originally Posted by sulak View Post
Der Link zum Bild klappt nicht
hm, wenn ich das script starte kommt halt folgende fehlermeldung:

Case $Button4

Error: "Case statement with no matching "Select" or "Switch" statement.


Quote:
Originally Posted by | Moep | View Post
Du machst drei Ifs auf, machst aber nur ein If wieder zu.
Außerdem hast du noch nen par logik Fehler drinne, aber die laß ich dichmal selber finden ;)
ahh, danke;DD das mit den if's werde ich mal ändern...und dann werde ich mich noch mal auf fehlersuche machen^^
02/02/2010 20:43 sulak#5
Quote:
#include <GUIConstants.au3>

#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 315, 120, 193, 122)
$Checkbox1 = GUICtrlCreateCheckbox("a", 8, 0, 25, 41)
$Checkbox2 = GUICtrlCreateCheckbox("b", 8, 48, 25, 25)
$Checkbox3 = GUICtrlCreateCheckbox("c", 8, 88, 25, 17)
$Button1 = GUICtrlCreateButton("Alle Makieren", 48, 24, 121, 25, 0)
$Button2 = GUICtrlCreateButton("Keine markieren", 48, 72, 121, 25, 0)
$Button3 = GUICtrlCreateButton("Start", 176, 24, 121, 25, 0)
$Button4 = GUICtrlCreateButton("Beenden", 176, 72, 121, 25, 0)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit

Case $Button1
GUICtrlSetState($Checkbox1, $GUI_CHECKED)
GUICtrlSetState($Checkbox2, $GUI_CHECKED)
GUICtrlSetState($Checkbox3, $GUI_CHECKED)
GUICtrlSetState($Checkbox4, $GUI_CHECKED)
Case $Button2
GUICtrlSetState($Checkbox1, $GUI_UNCHECKED)
GUICtrlSetState($Checkbox2, $GUI_UNCHECKED)
GUICtrlSetState($Checkbox3, $GUI_UNCHECKED)
GUICtrlSetState($Checkbox4, $GUI_UNCHECKED)
Case $Button3
If GUICtrlRead($Checkbox1) = $GUI_CHECKED Then
Sleep(2000)
Send("{a}")
ElseIf GUICtrlRead($Checkbox1) = $GUI_UNCHECKED Then
Sleep(1)
EndIf
If GUICtrlRead($Checkbox2) = $GUI_CHECKED Then
Sleep(2000)
Send("{b}")
ElseIf GUICtrlRead($Checkbox1) = $GUI_UNCHECKED Then
Sleep(1)
EndIf
If GUICtrlRead($Checkbox3) = $GUI_CHECKED Then
Sleep(2000)
Send("{c}")
ElseIf GUICtrlRead($Checkbox1) = $GUI_UNCHECKED Then
Sleep(1)
EndIf
Case $Button4
Exit
EndSwitch
WEnd
So mit allen Endif
02/02/2010 21:03 Visonar#6
Quote:
Originally Posted by sulak View Post
So mit allen Endif
ahh, danke;D hätt ich zwar auch hinbekommen können, aber okay...welch ein service xD

jetzt geht das schon ma, ICH LIEBE EUCH!!!!!!
wie auch immer
nun muss ich nur noch das problem mit dem "variable used without being declared." lösen

naja, großes THX an euch!

MFG
02/02/2010 22:55 | Moep |#7
Quote:
Originally Posted by WeezyF940 View Post
nun muss ich nur noch das problem mit dem "variable used without being declared." lösen
kleiner tipp, schau dir mal deine checkboxen an...
02/02/2010 23:07 kknb#8
einfach mal die fehlermeldungen richtig deuten. die variable ist zu dem zeitpunkt wo sie aufgerufen wird noch nicht bekannt. zeile 25-30
02/03/2010 11:03 Visonar#9
Quote:
Originally Posted by | Moep | View Post
kleiner tipp, schau dir mal deine checkboxen an...
stimmt hab ich schnell mal in ordnung gebracht...ich bin auch blöd^^