Громкость в TrackBar

Stayqw

Делаю mp3, воспроизвожу музыку через MediaPlayer. В чем проблема, у меня регулятор громкости стоит в TrackBarе, нужно сделать, чтобы когда включаю музыку, она была на 0 в трекбаре, чтобы не было звука. P.S Трекбар у меня работает, только когда включаю музыку она орет на максимум, нужно, чтобы молчала когда включаешь и прибавлять трекбаром.
13 ответов

Stayqw

В свойствах TrackBar:
TrackBar->Max = 100;
TrackBar->Min = 0;
На TrackBarChange:
waveOutSetVolume(0, TrackBar->Position*65535/100);
Это именно громкость всего приложения


Stayqw

Не помогло, все равно музыка сразу громко играетziqp, ziqp, Не помогло, все равно музыка сразу громко играет


Stayqw

Stayqw, покажите код


Stayqw

Почтальон, Ну это часть, где посоветовали ранее


Stayqw

Отладчик точно срабатывает на обработчике TrackBar2 ?


Stayqw

Почтальон, Да, вас смущает, что там TrackBar2 именно 2? Просто я уже от безысходства удалил первый TrackBar и второй воткнул, все равно.


Stayqw

Обработчик привязан к элементу ?


Stayqw

Почтальон, Да, все вроде нормально Может в Rad Studio 10.2 нельзя громкость в программе сделать на 0 таким способом


Stayqw

TrackBar->Position*65535/100
Смущает значение выражения....


Stayqw

Почтальон, Так посоветовали вышеПочтальон, У меня было вот так
TrackBar1->Max = 65350 ;
waveOutSetVolume(0, MAKELONG(TrackBar1->Position, TrackBar1->Position));
Но толку 0


Stayqw

Смущает значение выражения....
TrackBar->Position*65535/100 это пропорция. Минимальное значение звука 0, максимальное 65535. Минимальное значение TrackBar 0, максимальное 100. Так проще работать уже с процентами
Но толку 0
Попробуйте при запуске приложения сделать так (звук не должен идти вообще):
waveOutSetVolume(0, 0);
А затем так (звук установлен на максимум):
waveOutSetVolume(0, 65535);


Stayqw

ziqp, Все заработало, спасибо


Stayqw

Смущает значение выражения....
Поэтому и обратил внимание на это