Seite 1 von 1

Volume??

Verfasst: 21.04.2006 23:36
von Svking
Hallo
Ich habe einmal ein Musik und Video Player geschrieben
nur weis ich nicht
1. wie man einen Volume balken reinbaut
2. wie man den geladenen Dateinamen anzeigen lässt
und 3. wie man einen balken baut, der anzeigt, an welcher Stelle die Musik / Video gerade ist.

kann mir vieleicht einer Helfen?
(das ist mein erstes Programm)

Mein Code:

Code: Alles auswählen

If InitMovie()= 0
  MessageRequester("Fehler","Konnte Dx nicht finden",0)
EndIf


Enumeration
  #ButtonImage_0
EndEnumeration


Global Image0


Image0 = CatchImage(0, ?Image0)


DataSection
Image0:  
IncludeBinary "data\sv.bmp"
EndDataSection

  OpenWindow(1,200,200,300,120,#PB_Window_SystemMenu,"Sv Player") 
      CreateGadgetList(WindowID()) 
      ButtonImageGadget(#ButtonImage_0, 0, 0, 300, 39, Image0)
      ButtonGadget(1,0, 40, 150, 20,"öffnen") 
      ButtonGadget(2,150, 40, 150, 20,"Abspielen") 
      ButtonGadget(4,0, 60, 300, 20,"Stop")
      ButtonGadget(3,0, 80, 300, 20,"Beenden")
      TrackBarGadget(5,80,100,150,18,0,256)  
           Repeat 
      Select WaitWindowEvent() 
         Case #PB_EventCloseWindow 
        End
         Case #PB_EventGadget 
              Select EventGadgetID() 
                 Case 0
                     MessageRequester("Info","copyright by Sven Schober")
                 Case 1 
                     File$ = OpenFileRequester("Choose music","","SvPlayer - MOV,AVI,MPEG,MPG,WAV,MP3,WMV  | *.mov;*.avi;*.mpeg;*.mpg;*.wav;*.wmv;*.mp3;*.3gp;",0) 
                 Case 2 
                     LoadMovie(1,File$)
                     PlayMovie(1,0)
                 Case 3 
                 End 
                 Case 4
                 PauseMovie()
                Case 5
                      current_volume = GetGadgetState(4) 
                 
                 EndSelect 
              SetFocus_(WindowID()) 
      EndSelect 
   ForEver 

Verfasst: 22.04.2006 00:25
von benpicco
zu 1.: Du hast doch schon einen, der Befehl den du suchst heißt wohl MovieAudio(current_volume,balance) (unter current_volume = GetGadgetState(5) einsetzen (das soll sicher 5 heißen, nicht 4 :wink:), auch geht das volume von 0 bis 100, nicht bis 256
zu 2.: im Case 1 den text von GetFilePart(file$) mit SetGadgettext() auf ein Textgadget bringen.
zu 3.: Bei Videos ist es einfach: MovieStatus() sollte die aktuelle Position und movieLen() die gesamtlänge des Videos zurückgeben. Bei Musik ist es da schon schwieriger, dort
PB-Hilfe hat geschrieben:kann mangels vorhandener Bilder (Frames) in der Datei diese Information nicht ermittelt werden.

Verfasst: 22.04.2006 00:39
von Svking
sorry also ich bin noch ein totaler noob und hab das jetzt nich so ganz verstanden.

hab das jetzt so:

Code: Alles auswählen

If InitMovie()= 0
  MessageRequester("Fehler","Konnte Dx nicht finden",0)
EndIf

Enumeration
  #ButtonImage_0
EndEnumeration

vol = 50
Global Image0


Image0 = CatchImage(0, ?Image0)

Enumeration
  #Text_0
EndEnumeration

DataSection
Image0:  
IncludeBinary "data\sv.bmp"
EndDataSection



  OpenWindow(1,200,200,300,120,#PB_Window_SystemMenu,"Sv Player") 
      CreateGadgetList(WindowID()) 
      ButtonImageGadget(#ButtonImage_0, 0, 0, 300, 39, Image0)
      ButtonGadget(1,0, 40, 150, 20,"öffnen") 
      ButtonGadget(2,150, 40, 150, 20,"Abspielen") 
      ButtonGadget(4,0, 60, 300, 20,"Stop")
TrackBarGadget(5,80,80,150,18,0,100) 
      ButtonGadget(3,0, 100, 300, 20,"Beenden") 
      Repeat 
      Select WaitWindowEvent() 
         Case #PB_EventCloseWindow 
        End
         Case #PB_EventGadget 
              Select EventGadgetID() 
                 Case 0
                     MessageRequester("Info","copyright by Sven Schober | www.sv-tools.de.ms")
                 Case 1 
                     File$ = OpenFileRequester("Choose music","","SvPlayer - MOV,AVI,MPEG,MPG,WAV,MP3,WMV  | *.mov;*.avi;*.mpeg;*.mpg;*.wav;*.wmv;*.mp3;*.3gp;",0) 
                 Case 2 
                     LoadMovie(1,File$)
                     PlayMovie(1,0)
                 Case 3 
                 End 
                 Case 4
                 PauseMovie()
                 Case 5
                 current_volume = GetGadgetState(4)
                 MovieAudio(vol,0)                 
                 EndSelect 
              SetFocus_(WindowID()) 
      EndSelect 
   ForEver 
aber der regler will noch nich so richtig

wie verbinde ich die TrackBarGadget mit dem volume?

Verfasst: 22.04.2006 09:35
von Macros
Ohne jetzt zu testen:

Code: Alles auswählen

If InitMovie()= 0
  MessageRequester("Fehler","Konnte Dx nicht finden",0)
EndIf

Enumeration
  #ButtonImage_0
EndEnumeration

vol = 50
Global Image0


Image0 = CatchImage(0, ?Image0)

Enumeration
  #Text_0
EndEnumeration

DataSection
Image0: 
IncludeBinary "data\sv.bmp"
EndDataSection



  OpenWindow(1,200,200,300,120,#PB_Window_SystemMenu,"Sv Player")
      CreateGadgetList(WindowID())
      ButtonImageGadget(#ButtonImage_0, 0, 0, 300, 39, Image0)
      ButtonGadget(1,0, 40, 150, 20,"öffnen")
      ButtonGadget(2,150, 40, 150, 20,"Abspielen")
      ButtonGadget(4,0, 60, 300, 20,"Stop")
TrackBarGadget(5,80,80,150,18,0,100)
      ButtonGadget(3,0, 100, 300, 20,"Beenden")
      Repeat
      Select WaitWindowEvent()
         Case #PB_EventCloseWindow
        End
         Case #PB_EventGadget
              Select EventGadgetID()
                 Case 0
                     MessageRequester("Info","copyright by Sven Schober | www.sv-tools.de.ms")
                 Case 1
                     File$ = OpenFileRequester("Choose music","","SvPlayer - MOV,AVI,MPEG,MPG,WAV,MP3,WMV  | *.mov;*.avi;*.mpeg;*.mpg;*.wav;*.wmv;*.mp3;*.3gp;",0)
                 Case 2
                     LoadMovie(1,File$)
                     PlayMovie(1,0)
                 Case 3
                 End
                 Case 4
                 PauseMovie()
                 Case 5
                 current_volume = GetGadgetState(5)
                 MovieAudio(current_volume,0)                 
                 EndSelect
              SetFocus_(WindowID())
      EndSelect
   ForEver 

Verfasst: 22.04.2006 17:43
von Svking
cool danke es geht :)

würde nur noch gerne wissen, wie ich den Texttitel auf ein textgadget betkomme. kann mir da noch einer helfen?


Sv

Verfasst: 22.04.2006 18:09
von Macros

Code: Alles auswählen

setgadgettext(#Textgadget,GetFilePart(file$))