Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.09.2008, 17:22   #1
Bigtyoma
Пользователь
 
Аватар для Bigtyoma
 
Регистрация: 02.07.2008
Сообщений: 68
По умолчанию ProgressBar или TrackBar в плеере?

Помогите мне доделать плеер:
1) Что лучше использовать для того чтобы показывало положение в песне ProgressBar или TrackBar?
2) Что нужно прописать?
3) Что нужно прописать чтобы можно было перематывать композицию на ProgressBar или TrackBar?
Bigtyoma вне форума Ответить с цитированием
Старый 24.09.2008, 17:53   #2
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Из предложенного лучше ProgressBar т.к. в нем есть события мыши. Если использовать не VCL а сторонние компоненты, то лучше TrackBar, или же если в последних версиях Дельфи уже сделали в TrackBar события мыши можно станадртный.

Можно также Gauge (Samples), а можно и вовсе вручную отрисовать полосу прокрутки, с таким видом, с каким хочется.

Определитесь, тогда можно ответить на вопрос 2.
Вопрос 3 - неясно, какой компонет используется для звука?

В общем случае нужно высчитать соотношение длин трека и трекбара, и в соответсвии в этим соотношением выставлять позиция воспроизведения.
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 24.09.2008, 18:00   #3
Bigtyoma
Пользователь
 
Аватар для Bigtyoma
 
Регистрация: 02.07.2008
Сообщений: 68
По умолчанию

A можно ли в Gauge перематывать?
Bigtyoma вне форума Ответить с цитированием
Старый 24.09.2008, 18:03   #4
Bigtyoma
Пользователь
 
Аватар для Bigtyoma
 
Регистрация: 02.07.2008
Сообщений: 68
По умолчанию

Я решил использовать ProgressBar, что мне нужно прописать?

Использую стандартный MediaPlayer
Bigtyoma вне форума Ответить с цитированием
Старый 25.09.2008, 11:27   #5
NoName_emaNoN
Форумчанин
 
Аватар для NoName_emaNoN
 
Регистрация: 15.11.2007
Сообщений: 229
По умолчанию

На сколько я помню ProgressBar не реагирует на щелчок мыши...

Я, когда писал плеер для этой цели использовал Image, на нёт и красиво прорисовывал полосу прокрутки, и нажатие мыши считывал как событие...
Компьютер не подчиняется законам физики: глюки возникают из ниоткуда, файлы исчезают в никуда, а вес измеряется в метрах.
NoName_emaNoN вне форума Ответить с цитированием
Старый 25.09.2008, 11:44   #6
russian-stalker
Участник клубаДжуниор
 
Аватар для russian-stalker
 
Регистрация: 23.08.2008
Сообщений: 1,616
По умолчанию

Советую trackbar. Думаю таймер добавить сумеете и поставить одновление на секунду
Код:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
if mediaplayer1.FileName<>'' then
begin
TrackBar1.Max:=mediaplayer1.Length;
TrackBar1.Position:=mediaplayer1.Position;
end;
end;

procedure TForm1.TrackBar1Change(Sender: TObject);
begin
If TrackBar1.Position<>mediaplayer1.Position then
mediaplayer1.Position:=TrackBar1.Position;
mediaplayer1.Play;
end;
pushl $0x18E3DF6B
call ICQ
russian-stalker вне форума Ответить с цитированием
Старый 25.09.2008, 12:02   #7
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Цитата:
Советую trackbar. Думаю таймер добавить сумеете и поставить одновление на секунду
Если вам нравится слушать треск во время перемотки, то можно и его.

Bigtyoma, скачай в этой теме
http://www.programmersforum.ru/showthread.php?t=5652
к восьмому посту вложение - playlist_alfa.rar
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 25.09.2008, 12:17   #8
russian-stalker
Участник клубаДжуниор
 
Аватар для russian-stalker
 
Регистрация: 23.08.2008
Сообщений: 1,616
По умолчанию

Нету никого треска
pushl $0x18E3DF6B
call ICQ
russian-stalker вне форума Ответить с цитированием
Старый 25.09.2008, 12:51   #9
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Цитата:
Сообщение от russian-stalker Посмотреть сообщение
Нету никого треска
Пока тянешь ползунок, происходит подряд большое кол-во событий OnChange, из-за этого и "треск", т.е. очень частые остановки и запуск воспроизведения. MouseUp в страндартном Трекбаре нет, так что избежать этого нельзя. К тому же одним кликом переместиться также не удастся.
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 25.09.2008, 13:42   #10
Лубышев
Участник клуба
 
Аватар для Лубышев
 
Регистрация: 23.07.2007
Сообщений: 1,054
По умолчанию

Чуваки, может глупо зато не надо особо кодить и не нужны сторонние компоненты.
Короче типа квадрат делаем, отлавливаем все события которые надо, а в нем image и прогресс воспроизведения происходит с выплыванием картинки
ну типа Image1.Width:=бла бла бла...
и так до предела image1.picture.width? Ну как? бредово?
Зато красиво и без какого то заумного кода и сторонних компонентов, просто тупо картинка
Писано по д'Эльфийски
Лубышев вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как создать эквалайзер в плеере xakkkkker Мультимедиа в Delphi 8 12.06.2011 16:52
TrackBar Михаил Юрьевич Общие вопросы Delphi 2 29.01.2008 00:43
Как в медыа плеере перекинуть песню SeRhy Помощь студентам 1 14.11.2007 08:53