uses
..., MMsystem,...
//调节全部音量
procedure TForm1.TrackBar1Change(Sender: TObject);
var t, v: longint;
{ v 表示音量大小,高16位表示右声道音量,低16位表示左声道的音量}
begin
t := trackbar1.Position; { 这个值表示音量大小}
v := (t shl 8) or ( t shl 24);
WaveoutSetVolume(0,v); {设置音量}
end;
//控制左声道
procedure TForm1.TrackBar2Change(Sender: TObject);
var t, v : longint;
begin
t := trackbar2.Position;
WaveoutGetVolume(0, @v); {// @ 表示指向变量v的指针(32位),
调用此函数的用意就是得到右声道的值,做到在调节左声道的
时候,不改变右声道的值 }
v := v and $ffff0000 or ( t shl 8);
WaveoutSetVolume(0,v);
end;
//控制右声道
procedure TForm1.TrackBar3Change(Sender: TObject);
var t, v : longint;
begin
t := trackbar3.Position;
WaveoutGetVolume(0,@v);
v := v and $0000ffff or ( t shl 24);
WaveoutSetVolume(0,v);
end;