Перемотка песен
|
|
Hanigan | Дата: Среда, 13.06.2012, 07:38 | Сообщение # 1 |
Рядовой
Группа: Пользователи
Сообщений: 3
Статус: Offline
| Здравствуйте,как можно сделать перемотку песен? вместо скроллбара стоит прогрессбар. в процедуре MouseActivate стоит код: BASS_ChannelSetPosition(Channel, sprogressbar1.Position, 0); но при нажатии позицию он не меняет.
|
|
| |
xaramamburu | Дата: Среда, 13.06.2012, 13:51 | Сообщение # 2 |
Полковник
Группа: Администраторы
Сообщений: 240
Статус: Offline
| Hanigan, В процедуре procedure TForm_Player.Player; в место: //полоса проигрывания scrollbar1.Min:=0; //минимальное значение scrollbar1.Max:=bass_ChannelGEtLength(Channel, 0)-1;//максимальное значение пишем: ProgressBar1.Min:=0; ProgressBar1.Max:=bass_ChannelGEtLength(Channel, 0)-1;
далее в событии OnMouseDown прогресс бара пишем:
procedure TForm_player.ProgressBar1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); var p: real; begin if mode<>play then Exit; p:=ProgressBar1.Max/ProgressBar1.Width; ProgressBar1.Position:=round(x*p); bass_ChannelSetPosition(Channel, ProgressBar1.Position, 0); end;
аналогично в событии OnMouseMove прогресс бара пишем:
procedure TForm_player.ProgressBar1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); var p: real; begin if mode<>play then Exit; if ssleft in shift then //если нажата левая кнопка мыши begin p:=ProgressBar1.Max/ProgressBar1.Width; ProgressBar1.Position:=round(x*p); bass_ChannelSetPosition(Channel, ProgressBar1.Position, 0); end; end;
ну и в процедуре procedure TForm_player.Timer1Timer(Sender: TObject); в место: //устанавливаем позицию scrollbar в зависимоти от позиции трека scrollbar1.Position:=bass_channelGetPosition(channel,0); пишем: ProgressBar1.Position:=bass_channelGetPosition(channel,0);
Думаю, что все, должно работать.)))))))))
|
|
| |
ThePro94 | Дата: Пятница, 06.07.2012, 18:56 | Сообщение # 3 |
Рядовой
Группа: Пользователи
Сообщений: 14
Статус: Offline
| У меня вопрос...заменил ScrollBar на TrackBar(а точнее AdvTrackBar, из TMS Component Pack). При воспроизведении все работает почти как надо, но сама песня сильно тормозит. В чем может быть проблема? И при закрытии плеера на пару секунд воспроизведение становится нормальным.
Сообщение отредактировал ThePro94 - Пятница, 06.07.2012, 19:02 |
|
| |
xaramamburu | Дата: Пятница, 06.07.2012, 21:03 | Сообщение # 4 |
Полковник
Группа: Администраторы
Сообщений: 240
Статус: Offline
| ThePro94, Попробуй запустить на другом компе желательно с другой операционкой. Бывает такое, что один и тот же компонент по разному работает под различными ОС.))))
|
|
| |
ThePro94 | Дата: Пятница, 06.07.2012, 21:04 | Сообщение # 5 |
Рядовой
Группа: Пользователи
Сообщений: 14
Статус: Offline
| Quote (xaramamburu) ThePro94, Попробуй запустить на другом компе желательно с другой операционкой. Бывает такое, что один и тот же компонент по разному работает под различными ОС.)))) Такой возможности пока нет.. А как нибудь исправить такое можно? Или может я код не правильно написал...
|
|
| |
xaramamburu | Дата: Пятница, 06.07.2012, 21:23 | Сообщение # 6 |
Полковник
Группа: Администраторы
Сообщений: 240
Статус: Offline
| ThePro94, Я не утверждаю, что это из-за ОС, а просто говорю, что такое бывает. Попробуйте за комментировать все строки, связанные с вашим трекбаром, чтоб окончательно убедиться, что дело именно в нем.)))))
|
|
| |
Filo$oF | Дата: Пятница, 06.07.2012, 21:38 | Сообщение # 7 |
 Лейтенант
Группа: Пользователи
Сообщений: 61
Статус: Offline
| ThePro94 Ещё могу посоветовать сделать всё заново. У меня была проблемма с richedit - страшные висы (при попытке прокрутить текст комп зависал на несколько минут) - но когда сделал всё с нуля висы исчезли.
|
|
| |
ThePro94 | Дата: Пятница, 06.07.2012, 21:55 | Сообщение # 8 |
Рядовой
Группа: Пользователи
Сообщений: 14
Статус: Offline
| Quote (Filo$oF) ThePro94 Ещё могу посоветовать сделать всё заново. У меня была проблемма с richedit - страшные висы (при попытке прокрутить текст комп зависал на несколько минут) - но когда сделал всё с нуля висы исчезли. Что именно с нуля? Весь плеер или только трекбар?Добавлено (06.07.2012, 21:55) ---------------------------------------------
Quote (xaramamburu) Попробуйте за комментировать все строки, связанные с вашим трекбаром, чтоб окончательно убедиться, что дело именно в нем.))))) Все дело в нем. Без него все работает.
|
|
| |
Filo$oF | Дата: Пятница, 06.07.2012, 21:58 | Сообщение # 9 |
 Лейтенант
Группа: Пользователи
Сообщений: 61
Статус: Offline
| ThePro94 Весь проект.
|
|
| |
ThePro94 | Дата: Пятница, 06.07.2012, 22:42 | Сообщение # 10 |
Рядовой
Группа: Пользователи
Сообщений: 14
Статус: Offline
| Quote (Filo$oF) ThePro94 Весь проект. Это точно нет.. сделано много, все делать сначала не хочу.
|
|
| |