Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/18: Рейтинг темы: голосов - 18, средняя оценка - 5.00
1 / 1 / 2
Регистрация: 09.03.2012
Сообщений: 63

Видеоплеер - добавить полосу прокрутки

09.03.2012, 23:48. Показов 3727. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток всем. Нужно в текущий видеоплеер добавить полосу прокрутки, плейлист и громкость, может кто помочь?..
Вложения
Тип файла: zip multi player.zip (364.8 Кб, 830 просмотров)
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.03.2012, 23:48
Ответы с готовыми решениями:

Видеоплеер: добавить полосу прокрутки и таймер времени воспроизведения файла
Доброго времени суток всем. Помогиче пожалоста срочно на курсовую!! Нужно в текущий видеоплеер добавить полосу прокрутки и таймер времени...

ListBox, добавить горизонтальную полосу прокрутки
подскажите как сделать в ListBox горизонтальные полосы прокрутки

Убрать полосу прокрутки у cxCheckListBox
Здравствуйте, такая проблема, нужно избавиться от полосы прокрутки cxCheckListBox (чтобы не появлялась при большом кол-ве элементов). ...

8
 Аватар для Sergey-K
238 / 229 / 58
Регистрация: 27.10.2011
Сообщений: 249
10.03.2012, 03:40
Лучший ответ Сообщение было отмечено как решение

Решение

Прокрутка:
C++
1
2
3
4
5
6
7
8
9
10
11
void __fastcall TForm1::TrackBar1Change(TObject *Sender)
{
  TrackBar1->Max = MediaPlayer1->Length;
  if((MediaPlayer1->Position > TrackBar1->Position + 10) ||
    (MediaPlayer1->Position < TrackBar1->Position - 10))
    {
      MediaPlayer1->Pause();
      MediaPlayer1->Position = TrackBar1 -> Position;
      MediaPlayer1->Play();
    }
}
Громкость:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
void Volum(unsigned int SetVolume)
{
  DWORD Volume;
  WAVEOUTCAPSA Woc;
  if(waveOutGetDevCapsA(WAVE_MAPPER, &Woc, sizeof(Woc)) == MMSYSERR_NOERROR)
    if(Woc.dwSupport && WAVECAPS_VOLUME == WAVECAPS_VOLUME)
      waveOutSetVolume((HWAVEOUT)WAVE_MAPPER, MAKELONG(SetVolume, SetVolume));
}
//---------------------------------------------------------------------------
void __fastcall TForm1::TrackBar2Change(TObject *Sender)
{
  Volum((TrackBar2 -> Max - TrackBar2 -> Position) * 4369);
}
5
1 / 1 / 2
Регистрация: 09.03.2012
Сообщений: 63
11.04.2012, 17:30  [ТС]
Доброго времени суток всем. Нужно в текущий видеоплеер добавить рабочую полосу прокрутки и чтоб отображалось время воспроизведения видео, может кто помочь?.. Заранее спасибо!!!
Программа multi player.rar
0
Практикантроп
 Аватар для nick42
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
11.04.2012, 18:11
Цитата Сообщение от Sera_tovt Посмотреть сообщение
добавить рабочую полосу прокрутки
я бы попробовал (в зависимости от типа загруженного файла) использовать MediaPlayer1->Position , MediaPlayer1->Length .
0
13 / 13 / 2
Регистрация: 13.03.2011
Сообщений: 98
11.04.2012, 22:48
у меня время вот так отображается, на форму добавь sLabel`ы и timer

C++
1
2
3
4
5
6
7
8
MediaPlayer1->TimeFormat = tfMilliseconds;
   int ms = MediaPlayer1->Position;
 
   AnsiString st = IntToStr(SECOND(ms));
   if ( st.Length() == 1)
        st = "0" + st;
   st = IntToStr(MINUTE(ms)) + ":" + st;
   Label3->Caption = st;
ну в самом начале добавь вот это
C++
1
2
inline int MINUTE(int ms) {int re =((ms/1000)/60); return re;}
inline int SECOND(int ms) {int re =((ms/1000)%60); return re;}
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
12.04.2012, 00:28
DexMipt, sLabel - приблуда от АлфаКонтролс .
0
13 / 13 / 2
Регистрация: 13.03.2011
Сообщений: 98
12.04.2012, 00:35
Да точно, я так и не понял чем они отличаются ))
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
12.04.2012, 00:48
Отличаются тем, что большинству эти ваши левые контрас нафиг не нужны, и ваши примеры с приставкой s у компонентов только путают честной народ.
1
 Аватар для Pirat-SR
67 / 67 / 10
Регистрация: 20.02.2012
Сообщений: 234
12.04.2012, 01:10
Вот код для прокрутки TrackBar:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
//---------------------------------------------------------------------------
 
void __fastcall TForm1::TrackBar1Change(TObject *Sender)
{
if(Label3->Caption == "0")
{
}
else
{
MediaPlayer1->Position = (MediaPlayer1->Length/TrackBar1->Max) * TrackBar1->Position;
MediaPlayer1->Play();
}
Label3->Caption = "1";
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
int TT;
TrackBar1->Position = MediaPlayer1->Position/10;
Label3->Caption = "0";
TT = MediaPlayer1->Position / 1000;
min = int(TT / 60);
sec = TT - (min * 60);
if ( sec < 10)
Label6->Caption = "0" + IntToStr(sec);
else
Label6->Caption = IntToStr(sec);
Label4->Caption = IntToStr(min);
}
//---------------------------------------------------------------------------
Вот код для звука TrackBar:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
union TVolume{
unsigned long Volume;
struct
{
Word Left;
Word Right;
};
} volume;
int min,sec;   
 
//---------------------------------------------------------------------------
 
void __fastcall TForm1::TrackBar3Change(TObject *Sender)
{
volume.Left = - TrackBar3->Position;
volume.Right = - TrackBar3->Position;
waveOutSetVolume(0,volume.Volume);
}
//---------------------------------------------------------------------------
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.04.2012, 01:10
Помогаю со студенческими работами здесь

Плеер: как реализовать полосу прокрутки?
Я пользуюсь компонентом TMediaPlayer. Никак чето не получаеться реализвовать полосу прокрутки. Кто то может привести пример или исходник...

Как отключить полосу прокрутки в ListView
Здравствуйте многоуважаемые! Я новичок в программирование графического интерфейса в C++ Builder, начал изучать совсем недавно раньше...

Как отображать полосу прокрутки StringGrid всегда
Привет! Подскажите как сделать, чтобы вертикальная полоса прокрутки StringGrid отображалась всегда, а не только при заполнении экрана?

Показывать полосу прокрутки в Memo, когда все строки не помещаются
Как сделать чтобы в окне мемо когда все строки не помещаются появлялась полоса прокрутки? (как в блокноте)

Добавить полосу прокрутки для результатов
Как можно добавить в готовую программу полосы прокрутки, т.к. не весь текст помещается в окно, а возможности подняться вверх нет.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru