![]() |
Bass: Trackbarlänge wird nicht korrekt verändert
Hi,
ich benutze die Bass.dll. Wenn ich ein Lied lade, setze ich die Länge der Trackbar auf die Liedlänge. Fast immer enden diese Lieder vor der Länge der Trackbar, obwohl ich die Länge richtig eingestellt habe. Deshalb bleibt der Thumb auch stehen. Warum ? |
Re: Bass: Trackbarlänge wird nicht korrekt verändert
Wie wärs mit etwas Code?
|
Re: Bass: Trackbarlänge wird nicht korrekt verändert
Delphi-Quellcode:
//...
tb1.Position := 0; tb1.Max := GetSongLength; //... var Chan : HSTREAM; TPlayerModus = (moSamples, moMusik, moStream); function TfrmMain.GetSongLength: Integer; begin Result := 0; Case Modus of moSamples: Result := round(BASS_ChannelBytes2Seconds(Chan, BASS_ChannelGetLength(chan))); end; end; |
Re: Bass: Trackbarlänge wird nicht korrekt verändert
Hi,
ich mache folgendes:
Delphi-Quellcode:
Dann sollte es eigentlich gehen.
function TForm1.GetBASSInfo(Info: String): Int64;
var MilliSec: Integer; FloatPos: Float; begin FloatPos:=0; If Info = 'GetLength' then FloatPos:=BASS_ChannelBytes2Seconds(BassChannel, BASS_ChannelGetLength(BassChannel)) Else If Info = 'GetPosition' then FloatPos:=BASS_ChannelBytes2Seconds(BassChannel, BASS_ChannelGetPosition(BassChannel)); MilliSec:=Trunc(1000 * FloatPos); If MilliSec < 0 then MilliSec:=0; Result:=MilliSec; end; TrackBar.Max:=GetBASSInfo('GetLength'); Gruß Mazel |
Re: Bass: Trackbarlänge wird nicht korrekt verändert
Ok, es muss noch durch 1000 geteilt werden. Danke.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:01 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz