Ich bin mal wieder am Ende meiner Geduld ;o))
Wenn ich folgenden Code alleine ausführe, dann klappt alles, wie es soll:
C
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
;Opt("GUIOnEventMode", 1)
$kartenziehen = GUICreate("Neue Karte ziehen", 625, 445, 192, 124)
$suedstadt = GUICtrlCreateRadio("Südstadt", 104, 40, 121, 25)
$wohnviertel = GUICtrlCreateRadio("Wohnviertel", 104, 72, 129, 33)
$ok = GUICtrlCreateButton("Bestätigen", 488, 384, 97, 41, $WS_GROUP)
GUISetState(@SW_SHOW)
While 1
;Return $Kartentyp
$msg = GUIGetMsg()
if BitAND(GUICtrlRead($suedstadt), $GUI_CHECKED) = $GUI_CHECKED Then $Kartentyp = "Südstadt"
if BitAND(GUICtrlRead($wohnviertel), $GUI_CHECKED) = $GUI_CHECKED Then $Kartentyp = "Wohnviertel"
Select
Case $msg = $ok
MsgBox(1,"test",$Kartentyp)
ExitLoop
EndSelect
WEnd
GUIDelete()
Alles anzeigen
Wenn ich den Code nun aber als Funktion aufrufe, dann schließt sich das 2. Fenster einfach nicht. Ich habe keine Ahnung wo der Fehler steckt:
C
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
Opt("GUIOnEventMode", 1)
$mainwindows = GUICreate("Arkham Horror - Basisspiel", 1025, 601, 269, 148, BitOR($WS_SYSMENU,$WS_CAPTION,$WS_POPUP,$WS_POPUPWINDOW,$WS_BORDER,$WS_CLIPSIBLINGS))
GUICtrlSetDefBkColor (0xB3B2A0)
$aktuelleKarte = GUICtrlCreateEdit("", 48, 184, 520, 320, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL,$ES_WANTRETURN))
$geruechteKarte = GUICtrlCreateEdit("", 640, 48, 361, 185, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL,$ES_WANTRETURN))
$umgebungsKarte = GUICtrlCreateEdit("", 640, 304, 361, 209, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL,$ES_WANTRETURN))
$kartennummer = GUICtrlCreateInput("Kartenummer eingeben", 264, 32, 153, 24)
GUICtrlSetBkColor(-1, 0xFFFFFF)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Exit = GUICtrlCreateButton("Exit", 888, 544, 81, 41, $WS_GROUP)
GUICtrlSetBkColor(-1, 0xE9E5E5)
$newCard = GUICtrlCreateButton("Neue Karte", 448, 40, 91, 41, $WS_GROUP)
GUICtrlSetBkColor(-1, 0xE9E5E5)
GUISetState(@SW_SHOW)
GUISetOnEvent($GUI_EVENT_CLOSE, "Ende")
GUICtrlSetOnEvent($Exit, "Ende1")
GUICtrlSetOnEvent($newCard, "neueKarte")
Global $Kartentyp
While 1
Sleep(1000)
WEnd
Func Ende()
Exit
EndFunc
Func neueKarte()
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
;Opt("GUIOnEventMode", 1)
$kartenziehen = GUICreate("Neue Karte ziehen", 625, 445, 192, 124)
$suedstadt = GUICtrlCreateRadio("Südstadt", 104, 40, 121, 25)
$wohnviertel = GUICtrlCreateRadio("Wohnviertel", 104, 72, 129, 33)
$ok = GUICtrlCreateButton("Bestätigen", 488, 384, 97, 41, $WS_GROUP)
GUISetState(@SW_SHOW)
While 1
$msg = GUIGetMsg()
if BitAND(GUICtrlRead($suedstadt), $GUI_CHECKED) = $GUI_CHECKED Then $Kartentyp = "Südstadt"
if BitAND(GUICtrlRead($wohnviertel), $GUI_CHECKED) = $GUI_CHECKED Then $Kartentyp = "Wohnviertel"
Select
Case $msg = $ok
MsgBox(1,"test",$Kartentyp)
ExitLoop
EndSelect
WEnd
GUIDelete()
EndFunc
Func Ende1()
MsgBox(1,"test",$Kartentyp)
EndFunc
Alles anzeigen
Bin wie immer für jeden Tipp dankbar.
Grüße
CrazyER