Hallo Leute!
Ich habe dieses Programm mal geskriptet:
Spoiler anzeigen
#include <GUIConstantsEx.au3>
#include <ButtonConstants.au3>
#include <GUIListBox.au3>
#include <SliderConstants.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <Sound.au3>
#include <EditConstants.au3>
IniDelete(@ScriptDir&"\RadioID Logbericht.txt","actions")
IniWrite(@ScriptDir&"\RadioID Logbericht.txt","actions","=","+>Starting A&C Autologger[OK]")
IniWrite(@ScriptDir&"\RadioID Logbericht.txt","actions","==","+>Wait on Name and Password[...]")
Global $musik
Global $werbung
#Region ### START Koda GUI section Hauptprog ### Form=C:\Users\Jonathan Verbeek\Desktop\Arschens & Co TerminalForm.kxf
$TerminalForm1 = GUICreate("RadioID v1.0 - Eingeloggt als JoNi - Frequenz : 600,4 MHz", 573, 488, 215, 130)
$MenuItem1b = GUICtrlCreateMenu("Datei")
$SubMenuItem1b = GUICtrlCreateMenu("Modus", $MenuItem1b)
$Sub2MenuItem1b = GUICtrlCreateMenuItem("Musik + Werbung + Stimme", $SubMenuItem1b)
$SubMenuItem3b = GUICtrlCreateMenuItem("Beenden", $MenuItem1b)
$MenuItem2b = GUICtrlCreateMenu("Show")
$SubMenuItem11b = GUICtrlCreateMenuItem("Morgenshow", $MenuItem2b)
$SubMenuItem21b = GUICtrlCreateMenuItem("Mittagstisch", $MenuItem2b)
$SubMenuItem31b = GUICtrlCreateMenuItem("Weltweit", $MenuItem2b)
$SubMenuItem41b = GUICtrlCreateMenuItem("Gute Nacht!", $MenuItem2b)
$SubMenuItem51b = GUICtrlCreateMenuItem("Fußballreportage", $MenuItem2b)
$SubMenuItem61b = GUICtrlCreateMenuItem("Formel 1 Reportage", $MenuItem2b)
$MenuItem3b = GUICtrlCreateMenu("?")
$SubMenuItem12b = GUICtrlCreateMenuItem("Hilfe / Info", $MenuItem3b)
$MenuItem4b = GUICtrlCreateMenuItem("Ausloggen", -1)
$MusikList1 = GUICtrlCreateList("", 48, 56, 169, 279)
$Label1b = GUICtrlCreateLabel("Musik:", 48, 32, 35, 17)
$Label2b = GUICtrlCreateLabel("Werbung:", 240, 32, 51, 17)
$WerbungList2 = GUICtrlCreateList("", 240, 56, 169, 279)
$Slider1 = GUICtrlCreateSlider(520, 368, 30, 77, BitOR($TBS_VERT,$TBS_AUTOTICKS))
GUICtrlSetLimit(-1, 100, 0)
$Label3b = GUICtrlCreateLabel("Lautstärke:", 464, 360, 57, 17)
$Label4b = GUICtrlCreateLabel("--0", 544, 376, 16, 17)
$Label5b = GUICtrlCreateLabel("--100", 544, 424, 22, 17)
$Group1b = GUICtrlCreateGroup("Werbung", 136, 376, 185, 73)
$Button1b = GUICtrlCreateButton("Play", 144, 400, 35, 25, $WS_GROUP)
$Button2b = GUICtrlCreateButton("Pause", 184, 400, 35, 25, $WS_GROUP)
$Button3b = GUICtrlCreateButton("Stop", 224, 400, 35, 25, $WS_GROUP)
$Button4b = GUICtrlCreateButton("CUE A", 264, 400, 51, 25, $WS_GROUP)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group2b = GUICtrlCreateGroup("Musik", 320, 376, 193, 73)
$Button5b = GUICtrlCreateButton("Play", 328, 400, 35, 25, $WS_GROUP)
$Button6b = GUICtrlCreateButton("Pause", 368, 400, 35, 25, $WS_GROUP)
$Button7b = GUICtrlCreateButton("Stop", 408, 400, 35, 25, $WS_GROUP)
$Button8b = GUICtrlCreateButton("CUE B", 448, 400, 59, 25, $WS_GROUP)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Label6b = GUICtrlCreateLabel("Sounds:", 472, 64, 43, 17)
$SndButton1b = GUICtrlCreateButton("Werbung START", 472, 88, 91, 25, $WS_GROUP)
$SndButton2b = GUICtrlCreateButton("Werbung ENDE", 472, 112, 91, 25, $WS_GROUP)
$SndButton3b = GUICtrlCreateButton("Nachrichten", 472, 136, 91, 25, $WS_GROUP)
$SndButton5b = GUICtrlCreateButton("Wetter", 472, 160, 91, 25, $WS_GROUP)
$SndButton6b = GUICtrlCreateButton("Allgeimsound", 472, 184, 91, 25, $WS_GROUP)
$AddButton1b = GUICtrlCreateButton("Hinzufügen", 144, 336, 75, 25, $WS_GROUP)
$AddButton2b = GUICtrlCreateButton("Hinzufügen", 336, 336, 75, 25, $WS_GROUP)
$Pic1 = GUICtrlCreatePic("C:\Users\Jonathan Verbeek\Desktop\A&C icon.jpg", 32, 376, 89, 73, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
GUISetState(@SW_HIDE)
Dim $TerminalForm1_AccelTable[4][2] = [["^d", $MenuItem1b],["^s", $MenuItem2b],["^h", $MenuItem3b],["^l", $MenuItem4b]]
GUISetAccelerators($TerminalForm1_AccelTable)
#EndRegion ### END Koda GUI section Hauptprog ###
SoundSetWaveVolume(GUICtrlRead($Slider1))
;------------------------------------------------
#Region ### START Koda GUI section Loginscreen### Form=C:\Users\Jonathan Verbeek\Desktop\Aschens & Co Loginscreen.kxf
$Form1 = GUICreate("Einloggen", 311, 108, 192, 124)
$Label1 = GUICtrlCreateLabel("Moderator/en:", 8, 16, 72, 17)
$Label2 = GUICtrlCreateLabel("Passwort:", 8, 40, 50, 17)
$Input1 = GUICtrlCreateInput("", 88, 16, 217, 21)
$Input2 = GUICtrlCreateInput("", 88, 40, 217, 21, $ES_PASSWORD)
$Button1 = GUICtrlCreateButton("Einloggen", 224, 64, 81, 25, $WS_GROUP)
$Progress1 = GUICtrlCreateProgress(0, 88, 310, 17)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section Loginscreen###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
$message1 = MsgBox(36,"Sicher?","Sind sie sicher, das Terminal zu schliessen?" & @CRLF & "" & @CRLF & "Nur mal so:" & @CRLF & "Die Frequenz wird geblockt, also hören die Zuhörer nur rauschen...")
If $message1 = 6 Then
Exit
EndIf
Case $Button1
_logon()
Case $Sub2MenuItem1b
MsgBox(64,"Info!","Dieser Modus ist schon aktiviert!" & @CRLF & "" & @CRLF & "Aber nur weil sie das Terminal als ""One-Mode-Edition"" erworben haben!")
Case $SubMenuItem3b
$message1 = MsgBox(36,"Sicher?","Sind sie sicher, das Terminal zu schliessen?" & @CRLF & "" & @CRLF & "Nur mal so:" & @CRLF & "Die Frequenz wird geblockt, also hören die Zuhörer nur rauschen...")
If $message1 = 6 Then
Exit
EndIf
Case $SubMenuItem11b
MsgBox(64,"Info!","Morgenshow ist aktiviert!")
Case $SubMenuItem21b
MsgBox(64,"Info!","Mittagstisch ist aktiviert!")
Case $SubMenuItem31b
MsgBox(64,"Info!","Weltweit ist aktiviert!")
Case $SubMenuItem41b
MsgBox(64,"Info!","Gute Nacht! ist aktiviert!")
Case $SubMenuItem51b
MsgBox(64,"Info!","Fußballrepotage ist aktiviert!")
Case $SubMenuItem61b
MsgBox(64,"Info!","Formel 1 Reportage ist aktiviert!")
Case $SubMenuItem12b
MsgBox(64,"Hilfe / Info","Also:" & @CRLF & "" & @CRLF & "Lade einfach mit ""Hinzufügen"" Musik oder Werbung in die entsprechenden Listen rein." & @CRLF & "" & @CRLF & "Das Terminal besitzt die gleichen Funktionen wie ein Medien-Player (Play, Stop, Pause) Neu ist CUE A und CUE B zum umschalten von Musik -> Werbung oder andersrum" & @CRLF & "" & @CRLF & "An der rechten Seite sieht man die sogenannten ""Sounds""." & @CRLF & "" & @CRLF & "" & @CRLF & "INFO: Idee und Umsetzung: Jonathan Verbeek (c) 2010. All Rights reserved")
Case $MenuItem4b
$message2 = MsgBox(36,"Ausloggen?","Du wirst ausgeloggt!")
If $message2 = 6 Then
GUISetState(@SW_HIDE, $TerminalForm1)
GUISetState(@SW_SHOW, $Form1)
MsgBox(64,"Ausgeloggt!","Du bist ausgeloggt!")
EndIf
Case $AddButton1b
Local $musik
$musik = FileOpenDialog("Musik auswählen!",@DesktopDir, "Musikdateien (*.wma;*.mp3;*.cda)", 15)
If @error Then
MsgBox(16, "Fehler!", "Keine Datei ausgewählt")
ElseIf Not IsArray($musik) Then
$f = StringSplit($musik, "\", 1)
GUICtrlSetData($MusikList1, $f[UBound($f) - 1])
Else
$f = StringSplit($musik, "|", 1)
For $i = 2 To $f[0]
GUICtrlSetData($MusikList1, $f[$i])
Next
EndIf
Case $AddButton2b
Local $werbung
$werbung = FileOpenDialog("Werbung auswählen!",@DesktopDir, "Musikdateien (*.wma;*.mp3;*.cda)", 15)
If @error Then
MsgBox(16, "Fehler!", "Keine Datei ausgewählt")
ElseIf Not IsArray($werbung) Then
$f = StringSplit($werbung, "\", 1)
GUICtrlSetData($WerbungList2, $f[UBound($f) - 1])
Else
$f = StringSplit($werbung, "|", 1)
For $i = 2 To $f[0]
GUICtrlSetData($WerbungList2, $f[$i])
Next
EndIf
Case $Button1b
;_SoundPlay($werbung) Das geht nicht
EndSwitch
WEnd
Func _logon()
If GUICtrlRead($Input1) = "JoNi" Then
GUICtrlSetData($Progress1, 50)
Else
MsgBox(16,"Fehler!","Benutzername falsch!")
EndIf
If GUICtrlRead($Input2) = "passwd" Then
GUICtrlSetData($Progress1, 100)
MsgBox(64,"Eingeloggt", "ON AIR!" & @CRLF & "" & @CRLF & "Du bist im Terminal eingeloggt!")
GUISetState(@SW_HIDE, $Form1)
GUISetState(@SW_SHOW, $TerminalForm1)
IniWrite(@ScriptDir&"\RadioID Logbericht.txt","actions","===","+>LOGGED ON:")
IniWrite(@ScriptDir&"\RadioID Logbericht.txt","actions","====","+>JoNi| Time: " & @HOUR & ":" & @MIN & ":" & @SEC & " Date: " & @MDAY & "." & @MON & "." & @YEAR )
IniWrite(@ScriptDir&"\RadioID Logbericht.txt","actions","=====","+>Starting A&C Terminal v2.0[OK]")
IniWrite(@ScriptDir&"\RadioID Logbericht.txt","actions","======","+>This is a automatically IniWrite-System! Please not edit this .txt File! Thanks!")
Global $musik
Global $werbung
Else
MsgBox(16,"Fehler!","Passwort falsch!")
EndIf
EndFunc ;<==_logon()
Das Problem:
Wenn man auf Hinzufügen klickt, kommt der FileOpenDialotg, der fragt welche Musik geladen werden soll; genauso wie bei Werbung.
Dann erscheint die ausgewählte Musik bzw. Werbung in den Listen.
Dann möchte ich dass wenn man auf Play bei Musik oder Werbung klickt, dass dann nur der ausgewählte Titel gespielt wird,
aber wenn ich das so mache:
Case $Button1b
_SoundPlay($werbung)
Da spielt er erstens nichts, und zweitens würde er doch dann alle Titel spielen, oder?
MfG button421^^