
![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.
![]() ![]() |
![]() |
Артемий |
![]() ![]()
Сообщение
#1
|
![]() Помощник капитана ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 601 Пол: Мужской Реальное имя: Артем Репутация: ![]() ![]() ![]() |
Как сделать чтобы TrackBar умел перематывать музыку?
![]() -------------------- Dum spiro spero!
|
GoodWind |
![]()
Сообщение
#2
|
![]() Автооответчик ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 188 Пол: Мужской Реальное имя: Александр Репутация: ![]() ![]() ![]() |
с помощью чегшо проигрываешь музыку?
-------------------- Неадекватная чушь может быть адекватным ответом на неадекватный вопрос. Понятно или разжевать?
|
GoodWind |
![]()
Сообщение
#3
|
![]() Автооответчик ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 188 Пол: Мужской Реальное имя: Александр Репутация: ![]() ![]() ![]() |
подозреваю, что с помощью TMediaPlayer.
значит так... при открытии файла нужно сделать: Код ScrollBar1.Max:=MediaPlayer1.Length; т.е. максимальное значение трекбара (в моем случае скроллбара, разницы нет) теперь является концом песни. ну и в обработчике события OnChange пишем: Код if Sender<> Timer1 then begin ScrollBar1.Max:=MediaPlayer1.Length; MediaPlayer1.Play; end; собственно, все... ну и для красоты засунем таймер с небольшим интервалом - пусть передвигает нам ползунок трекбара... Код procedure TForm1.Timer1Timer(Sender: TObject); begin ScrollBar1.Position:=MediaPlayer1.Position; end; метод, конечно "через Жо", просто первое, что пришло в голову... да, и не забывай приостанавливать таймер при остановке\паузе песни.. -------------------- Неадекватная чушь может быть адекватным ответом на неадекватный вопрос. Понятно или разжевать?
|
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
Цитата(GoodWind @ 24.07.2006 21:08) ну и для красоты засунем таймер с небольшим интервалом - пусть передвигает нам ползунок трекбара... Вот ДО этого момента все будет работать, но как только навесишь на таймер действие TrackBar1.Position := MediaPlayer1.Position; (Все-таки, Track-Bar был в вопросе ![]() Стоп... Ясно, вот Sender проверить я не догадался... Sorry... Должно работать... ![]() Сообщение отредактировано: volvo - |
GoodWind |
![]()
Сообщение
#5
|
![]() Автооответчик ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 188 Пол: Мужской Реальное имя: Александр Репутация: ![]() ![]() ![]() |
Цитата Будет замечаться скакание песни вперед/назад, ибо каждый раз по таймеру теперь вызывается TTrackBar.OnChange... а как до меня долго доходила причина этого скакания =) надо чаще спать ![]() -------------------- Неадекватная чушь может быть адекватным ответом на неадекватный вопрос. Понятно или разжевать?
|
Артемий |
![]()
Сообщение
#6
|
![]() Помощник капитана ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 601 Пол: Мужской Реальное имя: Артем Репутация: ![]() ![]() ![]() |
ScrollBar1.Max:=MediaPlayer1.Length;
Куда этот код вставить? У меня ваш способ не работает! ![]() А нельзя выслать более корректный способ? ![]() Сообщение отредактировано: Артемий2 - -------------------- Dum spiro spero!
|
![]() ![]() |
![]() |
Текстовая версия | 2.10.2023 11:33 |