Hey Leute,
ich hab leider gerade ein Problem mit einer Funktion, die einen Optionalen Parameter haben soll.
ich möchte sie über eine Eventfunktion (also GUICtrlSetOnEvent) aufrufen.
Gleichzeitig soll es aber auch möglich sein, sie von einer anderen Funktion aus mit dem parameter aufrufen. Hierzu hab ich mal ein kleines Beispielscript gemacht (unten), der relevante teil ist aber in Zeile 12 und 13:
Func _ButtonPressed($i_ID = -1)
If $i_ID = -1 Then $i_ID = @GUI_CtrlId
hier kommt als Fehler immer "Variable used without being declared" (bei zeile 13)
eigentlich müsste aber doch im Funktionsaufruf die Variable deklariert werden oder?
Ich bitte um schnelle Hilfe
mit freundlichen Grüßen
Beep
Spoiler anzeigen
Opt("GUIOnEventMode", 1)
[/autoit] [autoit][/autoit] [autoit]GUICreate("", 700)
GUISetOnEvent(-3, "_exit")
$hbutton1 = GUICtrlCreateButton("Button, der sich rot färben soll", 100, 100, 200, 200)
GUICtrlSetOnEvent(-1, "_ButtonPressed");Event setzen
$hbutton2 = GUICtrlCreateButton("Button, der sich rot färben soll", 400, 100, 200, 200)
GUICtrlSetOnEvent(-1, "_ButtonPressed");Event setzen
GUISetState()
HotKeySet("{F1}", "_Funktion_die_die_Andere_Mit_Parameter_Aufruft")
Func _ButtonPressed($i_ID = -1)
If $i_ID = -1 Then $i_ID = @GUI_CtrlId
GUICtrlSetBkColor($i_ID, 0xff0000)
;...
EndFunc
Func _Funktion_die_die_Andere_Mit_Parameter_Aufruft()
;...
_ButtonPressed($hbutton1)
EndFunc
Func _exit()
Exit
EndFunc
While True
Sleep(10)
WEnd