Sithwecker problem bei song abspielen als benachrichtigung

  • hallo leute
    ich mache ja einen sithwecker
    ,doch das mit dem abspielen will ncih so wie es soll^^

    [autoit]


    #include <GUIConstants.au3>
    $sithpic = @MyDocumentsDir & "\DarthVaderROTSV1.jpg"
    $griff = @MyDocumentsDir & "\so.jpg"
    $1 = @MyDocumentsDir & "\so.jpg"
    $2 = @MyDocumentsDir & "\so.jpg"
    $3 = @MyDocumentsDir & "\so.jpg"
    $4 = @MyDocumentsDir & "\so.jpg"
    $5 = @mydocumentsdir & "\pfeil-runter-rot.gif"
    Opt("guioneventmode", 1)
    Global $check1 = 0, $check2 = 0, $Start = 0, $song = 0, $check3
    GUICreate("Sithwecker by Sithlord95", 258, 312, 190, 125)
    GUISetBkColor(0x000000)
    GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit")
    $Input1 = GUICtrlCreateInput(@HOUR & ":" & @MIN & ":" & @SEC, 0, 24, 209, 21)
    GUICtrlSetBkColor(-1, 0xFF0000)
    $Label1 = GUICtrlCreateLabel("Trage die Weckzeit ein", 0, 0, 212, 17)
    GUICtrlSetBkColor(-1, 0xFF0000)
    $Checkbox1 = GUICtrlCreateCheckbox("Checkbox1", 120, 80, 17, 17)
    $Label4 = GUICtrlCreateLabel("Mit Messagebox?", 0, 56, 212, 17)
    GUICtrlSetBkColor(-1, 0xFF0000)
    $Label2 = GUICtrlCreateLabel("Mit Beeptönen?", 0, 104, 212, 17)
    GUICtrlSetBkColor(-1, 0xFF0000)
    $Checkbox2 = GUICtrlCreateCheckbox("Checkbox2", 120, 128, 17, 17)
    $Button1 = GUICtrlCreateButton("Starten", 48, 152, 161, 33, 0)
    $Pic1 = GUICtrlCreatePic($sithpic, 0, 192, 257, 116)
    $griff = GUICtrlCreatepic($griff,208, 0, 50, 17)
    $Graphic1 = GUICtrlCreatepic($1,208, 56, 50, 17)
    $Graphic2 = GUICtrlCreatepic($2,208, 24, 50, 17)
    $Graphic3 = GUICtrlCreatepic($3,208, 104, 50, 17)
    $Button2 = GUICtrlCreateButton("Eigener Song", 0, 128, 89, 25, 0)
    $Graphic4 = GUICtrlCreatepic($4,208, 128, 49, 17)
    $Label3 = GUICtrlCreateLabel("Eigenen Song?", 136, 128, 76, 17)
    GUICtrlSetBkColor(-1, 0xFF0000 )
    $Checkbox3 = GUICtrlCreateCheckbox("Checkbox3", 224, 168, 17, 17)
    $Graphic5 = GUICtrlCreatepic($5,224, 144, 17, 25)
    GUISetState(@SW_SHOW)
    GUICtrlSetOnEvent($Checkbox3, "_check3")
    GUICtrlSetOnEvent($Button1, "_start")
    GUICtrlSetOnEvent($Checkbox1, "_check1")
    GUICtrlSetOnEvent($Checkbox2, "_check2")
    GUICtrlSetOnEvent($Button2, "_song")

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

    While 1
    If $Start = 1 And GUICtrlRead($Input1) = @HOUR & ":" & @MIN & ":" & @SEC Then
    If $check1 = 1 Then
    MsgBox(0, "Weckzeit", "Die Weckzeit ist erreicht :P ","15")
    ElseIf $check1 = 0 Then
    Sleep(10)
    EndIf
    If $check2 = 1 Then
    Beep(1500, 500)
    Beep(2000, 500)
    Beep(1000, 1000)
    ElseIf $check2 = 0 Then
    Sleep(10)
    EndIf
    if $song = 1 Then
    soundplay( $shit, 1)
    elseif $song = 0 then
    sleep(10)
    endif
    EndIf
    WEnd

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

    Func _start()
    $Start = 1
    EndFunc ;==>_start
    Func _check1()

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

    If BitAND(GUICtrlRead($Checkbox1), $GUI_CHECKED) = $GUI_CHECKED Then
    $check1 = 1
    Else
    $check1 = 0
    EndIf
    EndFunc ;==>_check1
    Func _check2()
    If BitAND(GUICtrlRead($Checkbox2), $GUI_CHECKED) = $GUI_CHECKED Then
    $check2 = 1
    Else
    $check2 = 0
    EndIf
    EndFunc ;==>_check2
    Func _Exit()
    Exit
    EndFunc
    func _song()

    $shit = InputBox("song", "gib den pfad an")
    $song = 1

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

    endfunc
    func _check3()
    If BitAND(GUICtrlRead($Checkbox3), $GUI_CHECKED) = $GUI_CHECKED Then
    $check3 = 1
    Else
    $check3 = 0
    EndIf
    EndFunc

    [/autoit]

    wie gesagt dsas läuft nich und mit der input box is irgendwie dumm
    wie wäre es wenn man das einbaut

    [autoit]


    $message = "Bitte wähle einen Song."

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

    $var = FileOpenDialog($message, @WindowsDir & "\", "Musik (*.mp3;)", 1)

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

    If @error Then
    MsgBox(4096,"","Keine Datei(en) ausgewählt")
    Else
    $var = StringReplace($var, "|", @CRLF)
    MsgBox(4096,"","Es wurde(n) " & $var & " ausgewählt")
    EndIf

    [/autoit]

    das hatte ich shcon eingebaut aber es läuft ja so oder so nicht wo is der fehler beim ersten script?

    Einmal editiert, zuletzt von Sithlord95 (18. April 2009 um 16:03)

    • Offizieller Beitrag

    Poste mal die Bilddateien, dann helf ich dir dabei. Am besten als Zip Archiv .

    • Offizieller Beitrag

    Probier mal das aus. Habe dein @MyDocumentDir mit @Scriptdir ersetzt und deine While Wend Schleife mal aufgeräumt. Du brauchst die Else in deinen IF Abfragen nicht .

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    $sithpic = @ScriptDir & "\DarthVaderROTSV1.jpg"
    $griff = @ScriptDir & "\so.jpg"
    $1 = @ScriptDir & "\so.jpg"
    $2 = @ScriptDir & "\so.jpg"
    $3 = @ScriptDir & "\so.jpg"
    $4 = @ScriptDir & "\so.jpg"
    $5 = @ScriptDir & "\pfeil-runter-rot.gif"
    Opt("guioneventmode", 1)
    Global $check1 = 0, $check2 = 0, $Start = 0, $song = 0, $check3 = 0, $Name, $Var
    GUICreate("Sithwecker by Sithlord95", 258, 312, 190, 125)
    GUISetBkColor(0x000000)
    GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit")
    $Input1 = GUICtrlCreateInput(@HOUR & ":" & @MIN & ":" & @SEC, 0, 24, 209, 21)
    GUICtrlSetBkColor(-1, 0xFF0000)
    $Label1 = GUICtrlCreateLabel("Trage die Weckzeit ein", 0, 0, 212, 17)
    GUICtrlSetBkColor(-1, 0xFF0000)
    $Checkbox1 = GUICtrlCreateCheckbox("Checkbox1", 120, 80, 17, 17)
    $Label4 = GUICtrlCreateLabel("Mit Messagebox?", 0, 56, 212, 17)
    GUICtrlSetBkColor(-1, 0xFF0000)
    $Label2 = GUICtrlCreateLabel("Mit Beeptönen?", 0, 104, 212, 17)
    GUICtrlSetBkColor(-1, 0xFF0000)
    $Checkbox2 = GUICtrlCreateCheckbox("Checkbox2", 120, 128, 17, 17)
    $Button1 = GUICtrlCreateButton("Starten", 48, 152, 161, 33, 0)
    $Pic1 = GUICtrlCreatePic($sithpic, 0, 192, 257, 116)
    $griff = GUICtrlCreatePic($griff, 208, 0, 50, 17)
    $Graphic1 = GUICtrlCreatePic($1, 208, 56, 50, 17)
    $Graphic2 = GUICtrlCreatePic($2, 208, 24, 50, 17)
    $Graphic3 = GUICtrlCreatePic($3, 208, 104, 50, 17)
    $Button2 = GUICtrlCreateButton("Eigener Song", 0, 128, 89, 25, 0)
    GUICtrlSetState(-1, $GUI_DISABLE)
    $Graphic4 = GUICtrlCreatePic($4, 208, 128, 49, 17)
    $Label3 = GUICtrlCreateLabel("Eigenen Song?", 136, 128, 76, 17)
    GUICtrlSetBkColor(-1, 0xFF0000)
    $Checkbox3 = GUICtrlCreateCheckbox("Checkbox3", 224, 168, 17, 17)
    $Graphic5 = GUICtrlCreatePic($5, 224, 144, 17, 25)
    GUISetState(@SW_SHOW)
    GUICtrlSetOnEvent($Checkbox3, "_check3")
    GUICtrlSetOnEvent($Button1, "_start")
    GUICtrlSetOnEvent($Checkbox1, "_check1")
    GUICtrlSetOnEvent($Checkbox2, "_check2")
    GUICtrlSetOnEvent($Button2, "_Soundwahl")

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

    While 1
    If $Start = 1 And GUICtrlRead($Input1) = @HOUR & ":" & @MIN & ":" & @SEC Then
    If $check1 = 1 Then
    MsgBox(0, "Weckzeit", "Die Weckzeit ist erreicht :P ", "15")
    EndIf
    If $check2 = 1 Then
    Beep(1500, 500)
    Beep(2000, 500)
    Beep(1000, 1000)
    EndIf
    If $song = 1 Then
    SoundPlay($Var, 1)
    EndIf
    EndIf
    Sleep(10)
    WEnd

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

    Func _start()
    $Start = 1
    EndFunc ;==>_start
    Func _check1()
    If BitAND(GUICtrlRead($Checkbox1), $GUI_CHECKED) = $GUI_CHECKED Then
    $check1 = 1
    Else
    $check1 = 0
    EndIf
    EndFunc ;==>_check1

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

    Func _check2()
    If BitAND(GUICtrlRead($Checkbox2), $GUI_CHECKED) = $GUI_CHECKED Then
    $check2 = 1
    Else
    $check2 = 0
    EndIf
    EndFunc ;==>_check2
    Func _Exit()
    Exit
    EndFunc ;==>_Exit

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

    Func _check3()
    If BitAND(GUICtrlRead($Checkbox3), $GUI_CHECKED) = $GUI_CHECKED Then
    GUICtrlSetState($Button2, $GUI_ENABLE)
    Else
    $check3 = 0
    GUICtrlSetState($Button2, $GUI_DISABLE)

    EndIf
    EndFunc ;==>_check3

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

    Func _Soundwahl()
    Local $message = "Bitte wähle einen Song."
    Local $Temp, $Name
    $Var = FileOpenDialog($message, @WindowsDir & "\", "Musik (*.mp3;)", 1)
    If @error Then
    MsgBox(4096, "", "Keine Datei(en) ausgewählt")
    GUICtrlSetState($Checkbox3,$GUI_UNCHECKED)
    GUICtrlSetState($Button2, $GUI_DISABLE)
    Return
    Else
    $Temp = StringSplit($Var, "\")
    $Name = $Temp[UBound($Temp) - 1]
    MsgBox(0,"Titelauswahl",$Name)
    $song = 1
    EndIf
    EndFunc ;==>_Soundwahl

    [/autoit]

    Edit: Du kannst natürlich wieder dein @MyDocumetDir reinschreiben.

    • Offizieller Beitrag

    Du mußt mal testen, ob der Sound richtig wiedergegeben wird. Wenn bei mir eine MP3 abgespielt wird reagiert die GUI nicht mehr. Kann aber auch an Windows Vista liegen .

    Das mit dem Button habe ich extra so gemacht . Wenn die Checkbox nicht aktieviert ist ist der Button deaktiviert. Wenn die Soundauswahl abgebrochen wird, dann wird die Checkbox entcheckt und der Button deaktiviert . Das muß so sein weil sonst ein Fehler ind SoundPlay kommt .

  • das mit dem nich mehr reagieren liegt daran an soundplay( $var ,1) die eins steht für alels anhalten einfach mit ner 0 austauschen dann läuft die musik udn der rest läuft weiter^^

    • Offizieller Beitrag

    Bei mir funzt es auch nicht mit soundplay( $var ,1), scheiß Vista . Hab aber eine Version die auch bei Vista läuft , verwendet die Sound.au3.

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #include <Sound.au3>

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

    $sithpic = @ScriptDir & "\DarthVaderROTSV1.jpg"
    $griff = @ScriptDir & "\so.jpg"
    $1 = @ScriptDir & "\so.jpg"
    $2 = @ScriptDir & "\so.jpg"
    $3 = @ScriptDir & "\so.jpg"
    $4 = @ScriptDir & "\so.jpg"
    $5 = @ScriptDir & "\pfeil-runter-rot.gif"
    Opt("guioneventmode", 1)
    Global $check1 = 0, $check2 = 0, $Start = 0, $song = 0, $check3 = 0, $Name, $Var,$Sound
    GUICreate("Sithwecker by Sithlord95", 258, 312, 190, 125)
    GUISetBkColor(0x000000)
    GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit")
    $Input1 = GUICtrlCreateInput(@HOUR & ":" & @MIN & ":" & @SEC, 0, 24, 209, 21)
    GUICtrlSetBkColor(-1, 0xFF0000)
    $Label1 = GUICtrlCreateLabel("Trage die Weckzeit ein", 0, 0, 212, 17)
    GUICtrlSetBkColor(-1, 0xFF0000)
    $Checkbox1 = GUICtrlCreateCheckbox("Checkbox1", 120, 80, 17, 17)
    $Label4 = GUICtrlCreateLabel("Mit Messagebox?", 0, 56, 212, 17)
    GUICtrlSetBkColor(-1, 0xFF0000)
    $Label2 = GUICtrlCreateLabel("Mit Beeptönen?", 0, 104, 212, 17)
    GUICtrlSetBkColor(-1, 0xFF0000)
    $Checkbox2 = GUICtrlCreateCheckbox("Checkbox2", 120, 128, 17, 17)
    $Button1 = GUICtrlCreateButton("Starten", 48, 152, 161, 33, 0)
    $Pic1 = GUICtrlCreatePic($sithpic, 0, 192, 257, 116)
    $griff = GUICtrlCreatePic($griff, 208, 0, 50, 17)
    $Graphic1 = GUICtrlCreatePic($1, 208, 56, 50, 17)
    $Graphic2 = GUICtrlCreatePic($2, 208, 24, 50, 17)
    $Graphic3 = GUICtrlCreatePic($3, 208, 104, 50, 17)
    $Button2 = GUICtrlCreateButton("Eigener Song", 0, 128, 89, 25, 0)
    GUICtrlSetState(-1, $GUI_DISABLE)
    $Graphic4 = GUICtrlCreatePic($4, 208, 128, 49, 17)
    $Label3 = GUICtrlCreateLabel("Eigenen Song?", 136, 128, 76, 17)
    GUICtrlSetBkColor(-1, 0xFF0000)
    $Checkbox3 = GUICtrlCreateCheckbox("Checkbox3", 224, 168, 17, 17)
    $Graphic5 = GUICtrlCreatePic($5, 224, 144, 17, 25)
    GUISetState(@SW_SHOW)
    GUICtrlSetOnEvent($Checkbox3, "_check3")
    GUICtrlSetOnEvent($Button1, "_start")
    GUICtrlSetOnEvent($Checkbox1, "_check1")
    GUICtrlSetOnEvent($Checkbox2, "_check2")
    GUICtrlSetOnEvent($Button2, "_Soundwahl")

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

    While 1
    If $Start = 1 And GUICtrlRead($Input1) = @HOUR & ":" & @MIN & ":" & @SEC Then
    If $check1 = 1 Then
    MsgBox(0, "Weckzeit", "Die Weckzeit ist erreicht :P ", "15")
    EndIf
    If $check2 = 1 Then
    Beep(1500, 500)
    Beep(2000, 500)
    Beep(1000, 1000)
    EndIf
    If $song = 1 Then
    _SoundPlay($sound, 0)
    ;~ SoundPlay($Var, 1)
    EndIf
    EndIf
    Sleep(10)
    WEnd
    _SoundClose($sound)
    Func _start()
    $Start = 1
    EndFunc ;==>_start
    Func _check1()
    If BitAND(GUICtrlRead($Checkbox1), $GUI_CHECKED) = $GUI_CHECKED Then
    $check1 = 1
    Else
    $check1 = 0
    EndIf
    EndFunc ;==>_check1

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

    Func _check2()
    If BitAND(GUICtrlRead($Checkbox2), $GUI_CHECKED) = $GUI_CHECKED Then
    $check2 = 1
    Else
    $check2 = 0
    EndIf
    EndFunc ;==>_check2
    Func _Exit()
    Exit
    EndFunc ;==>_Exit

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

    Func _check3()
    If BitAND(GUICtrlRead($Checkbox3), $GUI_CHECKED) = $GUI_CHECKED Then
    GUICtrlSetState($Button2, $GUI_ENABLE)
    Else
    $check3 = 0
    GUICtrlSetState($Button2, $GUI_DISABLE)

    EndIf
    EndFunc ;==>_check3

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

    Func _Soundwahl()
    Local $message = "Bitte wähle einen Song."
    Local $Temp, $Name
    $Var = FileOpenDialog($message, @WindowsDir & "\", "Musik (*.mp3;)", 1)
    If @error Then
    MsgBox(4096, "", "Keine Datei(en) ausgewählt")
    GUICtrlSetState($Checkbox3,$GUI_UNCHECKED)
    GUICtrlSetState($Button2, $GUI_DISABLE)
    Return
    Else
    $sound = _SoundOpen($Var, "Sound")

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

    $Temp = StringSplit($Var, "\")
    $Name = $Temp[UBound($Temp) - 1]
    MsgBox(0,"Titelauswahl",$Name)
    $song = 1
    EndIf
    EndFunc ;==>_Soundwahl

    [/autoit]

    Kannst du dir auch mal anschauen.

    • Offizieller Beitrag

    Ich habe Vista-Ultimate 64 und da zickt SoundPlay rum .

    • Offizieller Beitrag

    Weiß ich nicht , kann an so ziemlich allen liegen. Bei mir zick auch der Mediaplayer gelegentlich rum . Is aber auch egal. Wenn das Script bei jemanden nicht läuft, kann er ja das Alternativ-Script ausführen ;)