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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 28.01.2008, 23:42   #1
Михаил Юрьевич
Форумчанин
 
Аватар для Михаил Юрьевич
 
Регистрация: 25.12.2007
Сообщений: 661
Восклицание HELP

Есть такой исходняк работает на два TrackBar
на две колонки
но не могу откампилировать,выдает ошибку
на строке waveOutSetVolume.Если можно
обьясните в чем ошибка
procedure TForm1.TrackBar1Change(Sender: TObject);
var
s: dword;
a,b: word;
h: hWnd;
begin
a:=trackbar1.position;
b:=trackbar2.position;
s:=(a shl 16) or b;
waveOutSetVolume(h,s);
end;
За частые поиски был забанен во всех известных
поисковых системах!
Михаил Юрьевич вне форума
Старый 29.01.2008, 00:33   #2
xPAL
Пользователь
 
Регистрация: 13.01.2008
Сообщений: 34
По умолчанию ОТВЕТ

Чтоб на waveoutsetvolume не ругалась- подключи mmsystem.
А лучше использовать код на один трекбар-с двумя по нормальному не получится.
100% работает, Звук стерео !!!trackbar1.max:=255;!!!

procedure TForm1.TrackBar1Change(Sender: TObject);
var i :cardinal;
begin
i:=trackbar1.Position;
waveoutsetvolume (0,(i shl 24)+(i shl 8));
end;

На будущее - баланс между двумя колонками 16.
(i shl 24)+(i shl 8) это 24 -8.

Если просто написать waveoutsetvolume (0,i); -то ничего не будет
первый параметр лучше 0

P.S 2 месяца ушло, чтоб по норм сделать.

Последний раз редактировалось xPAL; 29.01.2008 в 00:49.
xPAL вне форума
Старый 29.01.2008, 10:13   #3
_Dmitry
Участник клуба
 
Аватар для _Dmitry
 
Регистрация: 02.09.2007
Сообщений: 1,193
По умолчанию

Зчем дублировать темы???
Вам все уже написали http://www.programmersforum.ru/showthread.php?t=13391
Если вам нужно разделить 2 канала, то бери значения из двух TrackBar-ов. Напимер, короткий код Михалыча:
waveOutSetVolume(WAVE_MAPPER,TrackB ar1.Position+(TrackBar2.Position shl 16));
Ну, и не забывай выставить для обеих TrackBar-ов Max=65535
_Dmitry вне форума
Старый 29.01.2008, 11:24   #4
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

помнится устное уже было, так что. предупреждение. закрыто.
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи

Последний раз редактировалось Квэнди; 30.01.2008 в 14:03.
Квэнди вне форума
Закрытая тема


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