Radioplayer Problem =P

  • Hi Leute...
    Ich bin dabei mir einen WebradioPlayer zu machen...
    Jetzt hab ich ein Problem...
    Nachdem man einen Sender hinzugefügt hat schließt das Programm sich danach...
    Ich möchte aber dass sich nur die InputBox schließt und man gleich am eingentlichn Player weitermachen kann...

  • Du hast ein exit gemacht das da nicht hingehört jetzt gehts ;)


    [autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GUIListBox.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <IE.au3>
    #Region ### START Koda GUI section ### Form=
    $webradio = GUICreate("Webradioplayer | F6 hide/show F7 close", 386, 250, 482, 253)
    GUISetBkColor(0x2B2B2B)
    $IE = _IECreateEmbedded()
    GUICtrlCreateObj($IE, 8, 112, 369, 137)
    $ListeGUI = GUICtrlCreateList("", 8, 8, 209, 97)
    GUICtrlSetData(-1,"")
    $LoadGUI = GUICtrlCreateButton("Load", 248, 16, 41, 41)
    $StopGUI = GUICtrlCreateButton("Stop", 312, 16, 41, 41)
    $HinzufuegenGui = GUICtrlCreateButton("Hinzufügen", 248, 80, 105, 17, $WS_GROUP)
    GUISetState(@SW_SHOW)
    HotKeySet("{F6}", "_hide")
    HotKeySet("{F6}", "_show")
    HotKeySet("{F7}", "_exit")
    #EndRegion ### END Koda GUI section ###

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

    If not FileExists("Sender.ini") Then
    MsgBox(16, "Radio-Streamer", "Die URL Liste Existiert Nicht!")
    Else
    $Liste = ""
    $Sections = IniReadSection("Sender.ini", "Sender")
    For $i = 1 to $Sections[0][0]
    $Liste &= $Sections[$i][0] & "|"
    Next
    GUICtrlSetData($ListeGUI, $Liste)
    EndIf

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

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

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

    Case $ListeGUI

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

    Case $LoadGUI
    If not GUICtrlRead($ListeGUI) = "" Then
    $sSender = IniRead("Sender.ini", "Sender", GUICtrlRead($ListeGUI), "")
    _IENavigate($IE, $sSender)

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

    EndIf

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

    Case $StopGUI
    _IENavigate($IE,"about:blank")

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

    Case $HinzufuegenGui

    $Form1 = GUICreate("Sender hinzufügen", 369, 183, 192, 124)
    GUISetBkColor(0x2B2B2B)
    $Input1 = GUICtrlCreateInput("", 24, 40, 329, 21)
    $Input2 = GUICtrlCreateInput("", 24, 96, 329, 21)
    $Label1 = GUICtrlCreateLabel("Sendername", 24, 16, 120, 17)
    $Label2 = GUICtrlCreateLabel("Senderadresse", 24, 72, 120, 17)
    $Button1 = GUICtrlCreateButton("OK", 144, 136, 97, 33, $WS_GROUP)
    GUISetState(@SW_SHOW)

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

    While 2
    $nMsg = GUIGetMsg()
    Switch $nMsg

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

    Case $GUI_EVENT_CLOSE
    Exit

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

    Case $Button1
    IniWrite("Sender.ini", "Sender", GUICtrlRead($Input1), GUICtrlRead($Input2))

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

    If not FileExists("Sender.ini") Then
    MsgBox(16, "Radio-Streamer", "Die URL Liste Existiert Nicht!")
    Else
    $Liste = ""
    $Sections = IniReadSection("Sender.ini", "Sender")
    For $i = 1 to $Sections[0][0]
    $Liste &= $Sections[$i][0] & "|"
    Next
    GUICtrlSetData($ListeGUI, $Liste)

    ;Hier war das exit das war falsch ;)

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

    EndIf
    EndSwitch
    WEnd
    EndSwitch
    WEnd

    [/autoit]
  • du verlässt das Programm mit exit!
    du musst

    [autoit]

    guisetstate($window,@sw_hide)

    [/autoit]


    machen

  • @NONO
    Okay...
    Aber wenn ich diesen Input oben auf dem Kreuz schließe schließt sich wieder beides...
    Mein Ziel ist es, dass ich nachdem ich den Sender eingegeben habe gleich einen auswählen kann ohne das programm neuzustarten ;)
    JuraX
    das versteh ich nicht...ich habe schon danach gegooglet aber die funktion davon verstehe ich nicht

  • das sollte funktionieren

    Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GUIListBox.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <IE.au3>
    #Region ### START Koda GUI section ### Form=
    $webradio = GUICreate("Webradioplayer | F6 hide/show F7 close", 386, 250, 482, 253)
    GUISetBkColor(0x2B2B2B)
    $IE = _IECreateEmbedded()
    GUICtrlCreateObj($IE, 8, 112, 369, 137)
    $ListeGUI = GUICtrlCreateList("", 8, 8, 209, 97)
    GUICtrlSetData(-1,"")
    $LoadGUI = GUICtrlCreateButton("Load", 248, 16, 41, 41)
    $StopGUI = GUICtrlCreateButton("Stop", 312, 16, 41, 41)
    $HinzufuegenGui = GUICtrlCreateButton("Hinzufügen", 248, 80, 105, 17, $WS_GROUP)
    GUISetState(@SW_SHOW)
    HotKeySet("{F6}", "_hide")
    HotKeySet("{F6}", "_show")
    HotKeySet("{F7}", "_exit")
    #EndRegion ### END Koda GUI section ###

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

    If not FileExists("Sender.ini") Then
    MsgBox(16, "Radio-Streamer", "Die URL Liste Existiert Nicht!")
    Else
    $Liste = ""
    $Sections = IniReadSection("Sender.ini", "Sender")
    For $i = 1 to $Sections[0][0]
    $Liste &= $Sections[$i][0] & "|"
    Next
    GUICtrlSetData($ListeGUI, $Liste)
    EndIf

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

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

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

    Case $ListeGUI

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

    Case $LoadGUI
    If not GUICtrlRead($ListeGUI) = "" Then
    $sSender = IniRead("Sender.ini", "Sender", GUICtrlRead($ListeGUI), "")
    _IENavigate($IE, $sSender)

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

    EndIf

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

    Case $StopGUI
    _IENavigate($IE,"about:blank")

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

    Case $HinzufuegenGui

    $Form1 = GUICreate("Sender hinzufügen", 369, 183, 192, 124)
    GUISetBkColor(0x2B2B2B)
    $Input1 = GUICtrlCreateInput("", 24, 40, 329, 21)
    $Input2 = GUICtrlCreateInput("", 24, 96, 329, 21)
    $Label1 = GUICtrlCreateLabel("Sendername", 24, 16, 120, 17)
    $Label2 = GUICtrlCreateLabel("Senderadresse", 24, 72, 120, 17)
    $Button1 = GUICtrlCreateButton("OK", 144, 136, 97, 33, $WS_GROUP)
    GUISetState(@SW_SHOW)

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

    While 2
    $nMsg = GUIGetMsg()
    Switch $nMsg

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

    Case $GUI_EVENT_CLOSE
    GUISetState($Form1,@SW_HIDE)

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

    Case $Button1
    IniWrite("Sender.ini", "Sender", GUICtrlRead($Input1), GUICtrlRead($Input2))

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

    If not FileExists("Sender.ini") Then
    MsgBox(16, "Radio-Streamer", "Die URL Liste Existiert Nicht!")
    Else
    $Liste = ""
    $Sections = IniReadSection("Sender.ini", "Sender")
    For $i = 1 to $Sections[0][0]
    $Liste &= $Sections[$i][0] & "|"
    Next
    GUICtrlSetData($ListeGUI, $Liste)
    GUISetState($Form1,@SW_HIDE)
    ;Hier war das exit das war falsch ;)

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

    EndIf
    EndSwitch
    WEnd
    EndSwitch
    WEnd

    [/autoit]

  • Jetzt reagieren die Buttons nichtmehr ;( ^^

    Kann man es nicht einfach machen, dass das skript nochmal von vorne läuft...
    am einfachsten wär ein goto-befehl...xD

    Einmal editiert, zuletzt von Hen_xD (8. Juni 2010 um 15:40)

  • Hallo,

    du benötigst GuiGetMSg(1) für deine 2 Guis. Hier das angepasste Skript:

    Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GUIListBox.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <IE.au3>
    #region ### START Koda GUI section ### Form=

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

    $Form1 = GUICreate("Sender hinzufügen", 369, 183, 192, 124)
    GUISetBkColor(0x2B2B2B)
    $Input1 = GUICtrlCreateInput("", 24, 40, 329, 21)
    $Input2 = GUICtrlCreateInput("", 24, 96, 329, 21)
    $Label1 = GUICtrlCreateLabel("Sendername", 24, 16, 120, 17)
    $Label2 = GUICtrlCreateLabel("Senderadresse", 24, 72, 120, 17)
    $Button1 = GUICtrlCreateButton("OK", 144, 136, 97, 33, $WS_GROUP)
    GUISetState(@SW_HIDE)

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

    $webradio = GUICreate("Webradioplayer | F6 hide/show F7 close", 386, 250, 482, 253)
    GUISetBkColor(0x2B2B2B)
    $IE = _IECreateEmbedded()
    GUICtrlCreateObj($IE, 8, 112, 369, 137)
    $ListeGUI = GUICtrlCreateList("", 8, 8, 209, 97)
    GUICtrlSetData(-1, "")
    $LoadGUI = GUICtrlCreateButton("Load", 248, 16, 41, 41)
    $StopGUI = GUICtrlCreateButton("Stop", 312, 16, 41, 41)
    $HinzufuegenGui = GUICtrlCreateButton("Hinzufügen", 248, 80, 105, 17, $WS_GROUP)
    GUISetState(@SW_SHOW)
    HotKeySet("{F6}", "_hide")
    HotKeySet("{F6}", "_show")
    HotKeySet("{F7}", "_exit")
    #endregion ### END Koda GUI section ###

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

    If Not FileExists("Sender.ini") Then
    MsgBox(16, "Radio-Streamer", "Die URL Liste Existiert Nicht!")
    Else
    $Liste = ""
    $Sections = IniReadSection("Sender.ini", "Sender")
    If IsArray($Sections) Then
    For $i = 1 To $Sections[0][0]
    $Liste &= $Sections[$i][0] & "|"
    Next
    GUICtrlSetData($ListeGUI, $Liste)
    EndIf
    EndIf

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

    While 1
    $nMsg = GUIGetMsg(1)
    If $nMsg[1] = $webradio Then
    Switch $nMsg[0]

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

    Case $GUI_EVENT_CLOSE
    Exit

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

    Case $ListeGUI

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

    Case $LoadGUI
    If Not GUICtrlRead($ListeGUI) = "" Then
    $sSender = IniRead("Sender.ini", "Sender", GUICtrlRead($ListeGUI), "")
    _IENavigate($IE, $sSender)

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

    EndIf
    Case $StopGUI
    _IENavigate($IE, "about:blank")

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

    Case $GUI_EVENT_CLOSE
    Exit

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

    Case $HinzufuegenGui
    ;evntuell Inputs leeren
    GUISetState(@SW_SHOW, $Form1)
    GUISetState(@SW_HIDE, $webradio)
    EndSwitch
    Else ;Gui Form1
    Switch $nMsg[0]
    Case $Button1
    IniWrite("Sender.ini", "Sender", GUICtrlRead($Input1), GUICtrlRead($Input2))

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

    If Not FileExists("Sender.ini") Then
    MsgBox(16, "Radio-Streamer", "Die URL Liste Existiert Nicht!")
    Else
    $Liste = ""
    $Sections = IniReadSection("Sender.ini", "Sender")
    For $i = 1 To $Sections[0][0]
    $Liste &= $Sections[$i][0] & "|"
    Next
    GUICtrlSetData($ListeGUI, $Liste)
    EndIf
    GUISetState(@SW_HIDE, $Form1)
    GUISetState(@SW_SHOW, $webradio)
    Case $GUI_EVENT_CLOSE
    GUISetState(@SW_HIDE, $Form1)
    GUISetState(@SW_SHOW, $webradio)
    EndSwitch
    EndIf
    WEnd

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

    Func _hide()
    GUISetState(@SW_HIDE, $webradio)
    HotKeySet("{F6}", "_show")
    EndFunc ;==>_hide

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

    Func _show()
    GUISetState(@SW_SHOW, $webradio)
    HotKeySet("{F6}", "_hide")
    EndFunc ;==>_show

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

    Func _exit()
    Exit 0
    EndFunc ;==>_exit

    [/autoit]

    lies dir dazu auch die Hilfe zu GuiGetMsg durch,

    mfg (Auto)Bert