|
You last visited: Today at 21:24
Advertisement
Mp3 Player von Lied zu Lied wechseln
Discussion on Mp3 Player von Lied zu Lied wechseln within the AutoIt forum part of the Coders Den category.
01/02/2012, 21:27
|
#1
|
elite*gold: 0
Join Date: Jul 2010
Posts: 307
Received Thanks: 290
|
Mp3 Player von Lied zu Lied wechseln
Hallo erstmal
Ich habe da ein problem wie in dem Titel des Threads steht ich habe einen "Mp3 Player erstellt" wenn ich das so nennen darf. Doch ich hab ein problem und zwar man kann mindestens 5 Lieder auswählen über Multiselect von FileOpenDialog, klappt auch alles super außer wenn ich versuche bei den Button's "Back" und "Next" es versuche so einzubauen das wenn man auf "Back" klickt ein Lied zurück kommt und umgekehrt also ich hab jetzt z.B. 2 Lieder das erste ist "Hangover - Taio Cruz" und "Fler - Kein Kommentar"
Ich höre mir gerade "Fler - Kein Kommentar" an aber möchte ein Lied zurück deswegen klicke ich auf Back und komme somit auf "Hangover - Taio Cruz" und halt umgekehrt. Ich henge schon sehr lange an diesem Problem hab auch schon versucht zu gucken ob ich in Google eine Lösung finde aber vergeblich ..
Das Script sieht so aus:
PHP Code:
#include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <Sound.au3> #include <Array.au3> #Region ### START Koda GUI section ### Form= $Form1 = GUICreate("Mp3 Player", 170, 74, 192, 124) $Button1 = GUICtrlCreateButton("Browse", 8, 8, 75, 25) $Button2 = GUICtrlCreateButton("Stop", 88, 8, 75, 25) $Button3 = GUICtrlCreateButton("Back", 8, 40, 75, 25) $Button4 = GUICtrlCreateButton("Next", 88, 40, 75, 25) GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Button1 $Open = FileOpenDialog("Choose your songs", @DesktopDir, "(*.mp3)", 4) $Songs = StringSplit($Open, "|") If ($Songs[0] > 6) Then MsgBox(36, "Error", "Max. 5 Songs! ._.") ElseIf ($Songs[0] = 1) Then $hSound = _SoundOpen($Open) _SoundPlay($hSound) Else $hSound = _SoundOpen($Songs[1] & "\" & $Songs[2]) _SoundPlay($hSound) EndIf Case $Button2 _SoundStop($hSound) _SoundClose($hSound) Case $Button3 Case $Button4 EndSwitch WEnd
Ich hab mit voller absicht meine Versuche die ich da ausprobiert habe nicht mit reingetan, weil es mir um ehrlich zu sein peinlich erscheint
Ich hoffe ihr könnt mir helfen.
Mit Freundlichen Grüßen Toasty-man
|
|
|
01/02/2012, 22:25
|
#2
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
du musst dein input ja ohnehin splitten. da FileOpenDialog das ergebnis ja mit | getrennt ausgibt, kannst du ja einfach per StringSplit das ganze in ein arry umwandeln.
nun kannst dur dir ja einfach eine zeiger variable erstellen, welche immer auf den aktuellen track zeigt.
deine next und back buttons bekommen dann als einzige aufgabe jeweils das setzen des zeigers =)
|
|
|
01/02/2012, 22:36
|
#3
|
elite*gold: 0
Join Date: Jul 2010
Posts: 307
Received Thanks: 290
|
Danke schonmal für die Antwort und gesplittet hab ich das ganze ja schon.
Das mit der Zeiger Variable musst du mir nochmal genauer erläutern. Ich verstehe es nicht wirklich
Edit: Also wie genau soll ich die zeiger variable setzen
|
|
|
01/02/2012, 23:25
|
#4
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
die zeigervariable zeigt auf das aktuelle file aus der liste.
hier mal ein beispiel wie man es sehr schön lösen könnte:
Code:
;$files <- array welches die einzelnen mp3 namen enthält
;$dir <- ordner in welchem sich geählte files befinden
;$zeiger <- zeigt auf index vom $files array, welcher gerade aktiv ist (aktuelles lied).
Global $files[1], $dir, $zeiger=0
HotKeySet('{F1}', 'SetFiles')
HotKeySet('{F2}', 'NextFile')
HotKeySet('{F3}', 'LastFile')
HotKeySet('{F4}', 'DisplayFile')
While Sleep(50)
WEnd
Func SetFiles()
Local $split = StringSplit(FileOpenDialog('Open', @ScriptDir, 'MP3 (*.mp3)', 4), '|')
If $split[0]=1 Then
Local $regEx = StringRegExp($split[1], '(.*)\\(.*)', 1)
$dir = $regEx[0]
$files[0]=$regEx[1]
ElseIf $split[0]>0 Then
$dir = $split[1]
ReDim $files[$split[0]-1]
For $i=2 To $split[0]
$files[$i-2]=$split[$i]
Next
EndIf
EndFunc
Func NextFile()
$zeiger+=1
If $zeiger>=UBound($files) Then $zeiger=0
EndFunc
Func LastFile()
$zeiger-=1
If $zeiger<0 Then $zeiger=UBound($files)-1
EndFunc
Func DisplayFile()
MsgBox(0, 'Info', 'Aktuelles File: '&$dir&'\'&$files[$zeiger])
EndFunc
|
|
|
01/02/2012, 23:39
|
#5
|
elite*gold: 0
Join Date: Jul 2010
Posts: 307
Received Thanks: 290
|
Ich danke dir *-* Ich werde mir das Beispiel jetzt mal genauer anschauen
Bis dann und danke nochmal *-*
Mit Freundlichen Grüßen
Toasty-man
|
|
|
Similar Threads
|
Lied
11/13/2011 - Off Topic - 1 Replies
Shine Trailer (SERVER OPEN NOW) - YouTube
Weiß jemand, wie das Lied heißt?
|
Lied name
06/27/2011 - Off Topic - 2 Replies
kennt jemand zufällig das erste Lied
YouTube - ‪usher more akiel & faris‬‏
|
Bestes Minecraft Lied (TNT-Lied)
06/02/2011 - Minecraft - 6 Replies
Hallo,
einfach nur epic!:
TNT-Lied
Downloadlink ist in der Videobeschreibung und hier:
Download TNT-Lied
|
was is das für ein lied
08/18/2006 - World of Warcraft - 7 Replies
hi leute
ich suche den namen des ersten song ins dem video hier kann mir den bitte jemand sagen ? ich bin schon am verzweifeln suche den schon saulange:D
hey guys i search the name of the first song in this video anyone know the name ?
http://www.myvideo.de/watch/14065
|
All times are GMT +2. The time now is 21:24.
|
|