Mehrere Fenster + verlinkung

  • Achso eine frage noch ich hab jetzt bein nächsten schritt 2 optionen. Wie kann ich das denn jetzt machen wenn jemand die radio schalt fläche 1 anklick das er dann zu zu einem anderen schritt geht als wenn er radio fläche 2 anklickt.

    Ich hab es so versucht aber ich weiß jetzt net wie ich da weiter kommen soll.

    Spoiler anzeigen
    [autoit]

    GUISetState(@SW_SHOW,$gui1)
    While 1
    $msg = GuigetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE Or $msg = $Exit1
    Exitloop
    Case $msg = $Weiter1
    ExitLoop
    GUIDelete($gui1)
    EndSelect
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    GUISetState(@SW_SHOW,$gui2)
    While 1 ;Schleife für 2.Gui
    $msg = GuigetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE Or $msg = $Exit2
    Exitloop
    Case $msg = $Weiter2
    If GUICtrlRead($hamachi) = 1 Then
    GUICreate ("Installation Ascent Server Hamachi", 500,200)
    EndIf
    Case $msg = $Weiter2
    If GUICtrlRead($dydns) = 1 Then
    GUICreate ("Installation Ascent Server Dydns", 500,200)
    EndIf
    EndSelect
    WEnd

    [/autoit]

    Wäre net wenn mir da noch ma jemand was sagen könnte ^^
    PS: Und wie kann ich das ändern das wenn ich auf Beenden klicke oda auch das X das er dann trotzdem das nächste fenster öffnet? (hat sich erledigt) ^^ Leider das andere noch nicht.

    2 Mal editiert, zuletzt von Cornfl4kes (23. Dezember 2007 um 19:31)

  • Wenn die Reihenfolge der GUis nicht linear ist, d.h.
    Gui1 -> Gui2 -> Gui3 ...
    Sondern z.B.

    Code
    .	/>Gui 2.1 ...
    .Gui1 <
    .	\> Gui 2.2 ...


    Dann sollte man alles in einer Schleife zusammenfassen Oder Jede Schleife in eine Funktion packen

    Schleife
    [autoit]

    While 1
    $extMsg = GUIGetMsg(1)
    $nMsg = $extMsg[0]
    Switch $extMsg[1]
    Case $Form1
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

    Case $Form1_Button1
    GUISetState(@SW_HIDE,$Form1)
    GUICtrlSetData($Form2_Edit1,"Gelesen Aus Form1!!" & @CRLF & @CRLF & GUICtrlRead($Form1_Edit1))
    GUISetState(@SW_SHOW,$Form2)
    EndSwitch

    Case $Form2
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    MsgBox(0,"","Exit in Form2!")
    Exit

    Case $Form2_Button1
    If MsgBox(36,"","Beenden?") = 6 Then Exit
    EndSwitch

    EndSwitch
    WEnd

    [/autoit]
    Funktionen
    [autoit]


    Func _GUI1()
    GUISetState(@SW_SHOW,$gui1)
    While 1
    $msg = GuigetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE Or $msg = $Exit1
    Exitloop
    Case $msg = $Weiter1
    GUIDelete($gui1)
    _GUI2()
    ExitLoop
    EndSelect
    WEnd
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _GUI2()
    GUISetState(@SW_SHOW,$gui2)
    While 1
    $msg = GuigetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE Or $msg = $Exit1
    Exitloop
    Case $msg = $Weiter1
    GUIDelete($gui2)
    _GUI3() ; ; oder Beenden ...
    ExitLoop
    EndSelect
    WEnd
    EndFunc

    [/autoit]
  • Danke :thumbup: nur hab ich es jetzt nicht mit Buttons gemacht sondern mit radio und wenn man auf weiter klick soll sich das je nach radio gewählte fenster öffnen. (hab versucht es so zu versuchen hab aber nicht wirklich funktioniert ?( )

    Vllt. kannste mr da noch ma helfen ^^ Thx
    MFG
    Edit: Hat sich schon erledigt.
    Frohe Weihnachten MFG

    Einmal editiert, zuletzt von Cornfl4kes (24. Dezember 2007 um 17:56)