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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 30.03.2009, 17:03   #1
Vladya
Форумчанин
 
Аватар для Vladya
 
Регистрация: 04.11.2008
Сообщений: 360
По умолчанию Настройка регулятора кода.

Короче у меня такая проблема, пишу проигрыватель в котором естественно есть регулятор громкости, но дело в том что после того как я в проигрывателе убираю громкость до минимума и выключаю проигрыватель то громкость так и остаётся выключенной, что делать не знаю. Подскажите кто может. Вот код моего регулятора:
Код:
procedure TForm1.TrackBar1Change(Sender: TObject);
var
  HWO: HWAVEOUT;
  WF: TWAVEFORMATEX;
  V: DWORD;
begin
  TrackBar1.Max:=65535;
  FillChar(WF,SizeOf(WF),0);
  WaveOutOpen(@HWO,WAVE_MAPPER,@WF,0,0,0);
  V:=TrackBar1.Position+TrackBar1.Position shl 16;
  WaveOutSetVolume(HWO,V);
  WaveOutClose(HWO);
end;
Мой скромненький сайт
Vladya вне форума Ответить с цитированием
Старый 30.03.2009, 17:36   #2
EvKont
Пользователь
 
Регистрация: 06.01.2009
Сообщений: 26
По умолчанию

Самое простое - вернуть звук на при закрытии формы (событие OnClose)
EvKont вне форума Ответить с цитированием
Старый 30.03.2009, 18:22   #3
Vladya
Форумчанин
 
Аватар для Vladya
 
Регистрация: 04.11.2008
Сообщений: 360
По умолчанию

да но как это сделать? Напиши код, пожалуйста
Мой скромненький сайт
Vladya вне форума Ответить с цитированием
Старый 30.03.2009, 18:50   #4
Terran
Участник клуба
 
Аватар для Terran
 
Регистрация: 28.11.2007
Сообщений: 1,521
По умолчанию

Можно так же при запуске программы записать в переменную значение громкости в данный момент, а при закрытии программы установить громкость как и была. Используйте свой код, только вместо TrackBar'а подставляйте напрямую значение.
Всегда рад помочь!
Terran вне форума Ответить с цитированием
Старый 30.03.2009, 20:18   #5
Vladya
Форумчанин
 
Аватар для Vladya
 
Регистрация: 04.11.2008
Сообщений: 360
По умолчанию

Дайте кто нибудь код, пожалуйста, потомучто я пробовал восстанавливать значение громкости при выключении но что то ничего не получается. Что делать?
Мой скромненький сайт
Vladya вне форума Ответить с цитированием
Старый 30.03.2009, 21:28   #6
Terran
Участник клуба
 
Аватар для Terran
 
Регистрация: 28.11.2007
Сообщений: 1,521
По умолчанию

Вот, примерчеГ:
Код:
Uses
   MMSystem,...
...
Var
V: DWord;
Function GetWaveVolume: DWord;
Var
Woc: TWaveOutCaps;
Volume: DWord;
Begin
Result:=0;
If WaveOutGetDevCaps(WAVE_MAPPER,@Woc,Sizeof(Woc)) = MMSYSERR_NOERROR Then
Begin
If Woc.DwSupport And WAVECAPS_VOLUME = WAVECAPS_VOLUME Then
Begin
WaveOutGetVolume(WAVE_MAPPER,@Volume);
Result:=Volume;
End;
End;
End;
Procedure SetWaveVolume(Const AVolume: DWord);
Var
Woc: TWaveOutCaps;
Begin
If WaveOutGetDevCaps(WAVE_MAPPER,@Woc,Sizeof(Woc)) = MMSYSERR_NOERROR Then
Begin
If Woc.DwSupport And WAVECAPS_VOLUME = WAVECAPS_VOLUME Then
WaveOutSetVolume(WAVE_MAPPER,AVolume);
End;
End;
Procedure TForm1.FormCreate(Sender: TObject);
Begin
V:=GetWaveVolume;
End;
Procedure TForm1.FormClose(Sender: TObject; Var Action: TCloseAction);
Begin
SetWaveVolume(V);
End;
Всегда рад помочь!
Terran вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Настройка печати Максим_Леонидович Компоненты Delphi 3 26.09.2008 20:45
Настройка модема Aleksandr Компьютерное железо 0 11.09.2008 14:19
Настройка редактора кода Hottabych Общие вопросы Delphi 5 29.05.2008 21:02
Настройка паскаля Snake_ua Паскаль, Turbo Pascal, PascalABC.NET 7 18.10.2007 17:56
Выдернуть куски кода из html-кода trafbite Помощь студентам 7 18.08.2007 13:51