Тема: TrackBar - HELP!!
Показать сообщение отдельно
  #2  
Старый 07.08.2006, 14:19
Аватар для Decoding
Decoding Decoding вне форума
Местный
 
Регистрация: 03.06.2006
Адрес: Почту найдете на моем сайте
Сообщения: 576
Версия Delphi: D10.2
Репутация: 214
По умолчанию

Естественно будет заикание, ты ведь заставляешь MediaPlayer начинать воспроизведение при каждом изменении позиции TrackBar'а. А MediaPlayer.Play нужно вызывать только тогда, когда ты вручную изменил позицию TrackBar'а. Тут подошло бы событие OnMouseUp, но вот беда, у стандартного TrackBar'а его нет. Выход - создать свой компонент, наследник TrackBar, и определить в нем событие OnMouseUp. Тогда нужный тебе код будет выглядеть так:

Код:
procedure TForm1.TrackBar1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
   MediaPlayer1.Position := TrackBar1.Position;
   MediaPlayer1.Play;
end;

Можешь воспользоваться моим компонентом, в котором добавлено несколько событий для мыши, в том числе и OnMouseUp - http://decoding.narod.ru/download/my...tetrackbar.zip.
Ответить с цитированием