Hey Leute ich hab mich auch mal an nen Music Player gesetzt und das is dabe rausgekommen
guckts euch einfach mal an und sagt was ihr davon haltet und ich bin für verbesserungen sowieso immer offen;)
Spoiler anzeigen
#include <Sound.au3>
#include <File.au3>
#include <GUIConstantsEx.au3>
#include <GuiListView.au3>
Global $pfad = @ScriptDir&"\Music\"
Global $titel = _FileListToArray($pfad,"*.mp3",1)
If IsArray($titel) = 0 Then
MsgBox(0,"ERROR","In dem ausgewählten Verzeichnis befinden sich keine .mp3 Dateien")
Exit
EndIf
Global $titelnummer = 1
Global $sound
Global $volume = 100
Global $titelgui = "Music Player - " & $titel[$titelnummer]
Global $size = UBound($titel)
Global $var = 1
Global $balken
Global $shuffle = 1
Dim $groessetitel[$size]
Dim $listitem[$size]
Dim $string
Dim $length[5]
SoundSetWaveVolume($volume)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]GUICreate($titelgui,500,500)
$B1 = GUICtrlCreateButton("<",10,10,50,50)
$B2 = GUICtrlCreateButton(">",70,10,50,50)
$B3 = GUICtrlCreateButton("+",130,10,50,50)
$B4 = GUICtrlCreateButton("-",190,10,50,50)
$B5 = GUICtrlCreateButton("| |",250,10,50,50)
$B6 = GUICtrlCreateButton("Musik auswählen",310,10,110,50)
$L1 = GUICtrlCreateLabel("Volume: "&$volume&"%",10,70)
$L2 = GUICtrlCreateLabel("Titelanzahl: "&$size-1,120,70)
$L3 = GUICtrlCreateLabel("Aktueller Titel: "&$titelnummer,230,70)
$P = GUICtrlCreateProgress(10,100,480,20)
$list = GUICtrlCreateListView("Nr.|Titel |Größe|Länge",10,130,480,360)
GUISetState()
getgroesse()
listefuellen()
play($titelnummer)
While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
Exit
Case $msg = $B1
vorher()
Case $msg = $B2
nachher()
Case $msg = $B3
lauter()
Case $msg = $B4
leiser()
Case $msg = $B5
playpause()
Case $msg = $B6
pfadaendern()
EndSelect
For $i=1 To $size-1
Switch $msg
Case $listitem[$i]
anderer($i)
EndSwitch
Next
titelende()
setbalken()
WEnd
Func play($nummer)
$sound = _SoundOpen($pfad&$titel[$nummer])
_SoundPlay($sound, 0)
EndFunc
Func vorher()
If $titelnummer >= 2 Then
_SoundClose($sound)
$titelvorher = $titelgui
$titelnummer = $titelnummer - 1
play($titelnummer)
$titelnachher = "Music Player - " & $titel[$titelnummer]
WinSetTitle($titelvorher,"",$titelnachher)
$titelgui = $titelnachher
GUICtrlSetData($L3,"Aktueller Titel: "&$titelnummer)
Else
_SoundClose($sound)
$titelvorher = $titelgui
$titelnummer = $size-1
play($titelnummer)
$titelnachher = "Music Player - " & $titel[$titelnummer]
WinSetTitle($titelvorher,"",$titelnachher)
$titelgui = $titelnachher
GUICtrlSetData($L3,"Aktueller Titel: "&$titelnummer)
EndIf
EndFunc
Func nachher()
If $titelnummer <= $size-2 Then
_SoundClose($sound)
$titelvorher = $titelgui
$titelnummer = $titelnummer + 1
play($titelnummer)
$titelnachher = "Music Player - " & $titel[$titelnummer]
WinSetTitle($titelvorher,"",$titelnachher)
$titelgui = $titelnachher
GUICtrlSetData($L3,"Aktueller Titel: "&$titelnummer)
Else
_SoundClose($sound)
$titelvorher = $titelgui
$titelnummer = 1
play($titelnummer)
$titelnachher = "Music Player - " & $titel[$titelnummer]
WinSetTitle($titelvorher,"",$titelnachher)
$titelgui = $titelnachher
GUICtrlSetData($L3,"Aktueller Titel: "&$titelnummer)
EndIf
EndFunc
Func lauter()
If $volume < 100 Then
$volume = $volume + 10
EndIf
SoundSetWaveVolume($volume)
GUICtrlSetData($L1,"Volume: "&$volume&"%")
EndFunc
Func leiser()
If $volume > 0 Then
$volume = $volume - 10
EndIf
SoundSetWaveVolume($volume)
GUICtrlSetData($L1,"Volume: "&$volume&"%")
EndFunc
Func playpause()
If $var = 1 Then
_SoundPause($sound)
GUICtrlSetData($B5,"|>")
$var = $var*-1
Else
_SoundResume($sound)
GUICtrlSetData($B5,"| |")
$var = $var*-1
EndIf
EndFunc
Func listefuellen()
For $i=1 To $size-1
$length1 = _SoundLength($pfad&$titel[$i])
$length2 = StringSplit($length1,":")
$length = $length2[2]&":"&$length2[3]
$listitem[$i] = GUICtrlCreateListViewItem($i&"|"&$titel[$i]&"|"&$groessetitel[$i]&"|"&$length,$list)
Next
EndFunc
Func getgroesse()
For $i=1 To $size-1
$groessetitel[$i] = FileGetSize($pfad&$titel[$i])/1000000
$groessetitel[$i] = Round($groessetitel[$i],2)
Next
EndFunc
Func anderer($anderer)
_SoundClose($sound)
$titelvorher = $titelgui
play($anderer)
$titelnachher = "Music Player - " & $titel[$anderer]
WinSetTitle($titelvorher,"",$titelnachher)
GUICtrlSetData($L3,"Aktueller Titel: "&$anderer)
$titelgui = "Music Player - " & $titel[$anderer]
EndFunc
Func setbalken()
$length = _SoundLength($sound)
$pos = _SoundPos($sound)
$string1 = StringSplit($pos,":")
$string2 = StringSplit($length,":")
$lengthrichtig = $string2[2]*60+$string2[3]
$posrichtig = $string1[2]*60+$string1[3]
$balken = $posrichtig/$lengthrichtig*100
GUICtrlSetData($P,$balken)
EndFunc
Func titelende()
If _SoundPos($sound) = _SoundLength($sound) Then
nachher()
EndIf
EndFunc
Func pfadaendern()
_SoundClose($sound)
_GUICtrlListView_DeleteAllItems($list)
$pfadzwischen = FileSelectFolder("Musikordner auswählen","")
$pfad = $pfadzwischen&"\"
$titel = _FileListToArray($pfad,"*.mp3",1)
$size = UBound($titel)
listefuellen()
EndFunc