Ich finde es etwas seltsam.
Ich versuche schon seit gestern ein Script zum laufen zu bringen, der mehrere GUIs nutzt. Da es nicht geklappt hat, habe ich ein kleineren Script gebastelt und dieser läuft.
Gibt es in Autoit einige Funktionen die die Switch Methode blockieren?
Weil der hier funktioniert einwandfrei:
[autoit]#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 247, 168, 192, 114)
$Button1 = GUICtrlCreateButton("Button1", 70, 60, 81, 31, $WS_GROUP)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
#Region ### START Koda GUI section ### Form=
$Form2 = GUICreate("Form2", 270, 168, 445, 115)
$Button2 = GUICtrlCreateButton("Button2", 60, 60, 101, 31, $WS_GROUP)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
MsgBox(0,"1","btn 1")
Case $Button2
MsgBox(0,"2","btn 2")
EndSwitch
WEnd
Sobald es aber komplexer wird, kann ich auf die Buttons drücken wie ich will und es passiert nichts.
Ich habe dann mal das ganze mit Func() ausprobiert und es hat auch nicht wirklich geklappt.
Es wurden zwar die Buttons erkannt, aber ich weiß nicht wie ich eine bestimmte Funktion einen Button zuordnen kann.
Nur eine Funktion habe ich hinbekommen:
Func CloseAll()
Exit
EndFunc
Wie mache ich das jetzt, dass zB:
[/autoit][autoit][/autoit][autoit]Func $Button1()
MsgBox(0,"1","btn 1")
;Platzhalter
EndFunc
Func $Button2()
MsgBox(0,"2","btn 2")
;Platzhalter
EndFunc
Auch beim klick auf button 1: "btn 1" als Messagebox und
klick auf button 2: "btn 2" als Messageboxausgegeben wird ?
Ich glaube (und hoffe) das dies mein Problem lösen wird =D
mfg Taliis