Seite 2 von 2

Verfasst: 03.02.2007 10:41
von PureBasic4.0
Aber wie kann ich diese Interfaces wie GetPositions() ansprechen? Bin absoluter Noob in APIs. Kannst du mir mal nen code senden?

Danke

Verfasst: 03.02.2007 17:50
von Fluid Byte

Code: Alles auswählen

InitMovie()

Structure MovieStruc
	Movie.IGraphBuilder
	MediaControl.IMediaControl
	MediaEvent.IMediaEventEx
	Window.IVideoWindow
	Audio.IBasicAudio
	Video.IBasicVideo
	MediaSeeking.IMediaSeeking
	State.l
EndStructure

Pattern$ = "Mediafiles (All Types)|*.aif;*.aifc;*.aiff;*.mid;*.rmi;*.midi;*.mp3;*.ogg;*.wma;*.wav;*.snd;*.au|"
Pattern$ + "Apple Macintosh(*.aif;*.aifc;*.aiff)|*.aif;*.aifc;*.aiff|"
Pattern$ + "MIDI-Files (*.mid;*.rmi;*.midi)|*.mid;*.rmi;*.midi|"
Pattern$ + "MPEG Audio (*.mp3)|*.mp3|"
Pattern$ + "OGG Files (*.ogg)|*.ogg|"
Pattern$ + "Windows Audiofile (*.wav;*.snd;*.au)|*.wav;*.snd;*.au|"
Pattern$ + "Windows Media Audio (*.wma)|*.wma|"
Pattern$ + "All Files (*.*)|*.*"

Filename$ = OpenFileRequester("","",Pattern$,0)

If Filename$
	*movie.MovieStruc = LoadMovie(0,Filename$)
	
	OpenWindow(0,0,0,300,130,"DX Audio Playback",#WS_SYSMENU | 1)
	CreateGadgetList(WindowID(0))
	ImageGadget(0,10,10,270,80,0,#PB_Image_Border)
	
	CreateImage(0,270,80) : LoadFont(0,"Arial",45,256)
	
	PlayMovie(0,WindowID(0))
	
	Repeat
		EventID = WindowEvent() : Delay(20)
	
		*movie\MediaSeeking\GetCurrentPosition(@Position.l)
		
		Millisecs = Position / 10000
		SecondsTotal = Millisecs / 1000
		MinutesTotal = SecondsTotal / 60	
		Hours = MinutesTotal / 60
		
		Seconds = SecondsTotal - (MinutesTotal * 60)
		Minutes = MinutesTotal - (Hours * 60)
		
		Time$ = RSet(Str(Hours),2,"0") + ":" + RSet(Str(Minutes),2,"0") + ":" + RSet(Str(Seconds),2,"0")
	
		StartDrawing(ImageOutput(0))
		DrawingFont(FontID(0))
		DrawText(17,5,Time$,#White,0)
		StopDrawing()
		SetGadgetState(0,ImageID(0))
	Until EventID = #WM_CLOSE
EndIf

Verfasst: 03.02.2007 21:43
von PureBasic4.0
danke