声音,左右声道
unit SControls;interfaceuses
  Windows, Mmsystem, Classes, Controls, ComCtrls, Messages, SysUtils, Graphics, Forms, Dialogs,
  StdCtrls;type
  TForm1 = class(TForm)
    TrackBar1: TTrackBar;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    TrackBar2: TTrackBar;
    TrackBar3: TTrackBar;
    procedure TrackBar1Change(Sender: TObject);
    procedure TrackBar2Change(Sender: TObject);
    procedure TrackBar3Change(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;var
  Form1: TForm1;implementation{$R *.DFM}procedure TForm1.TrackBar1Change(Sender: TObject);
var
  t,v:LongInt;
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:=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;procedure TForm1.FormCreate(Sender: TObject);
var
  v:LongInt;
begin
  WaveOutGetVolume(0,@v);
  TrackBar1.Position:=v;
  TrackBar2.Position:=hi(v);
  TrackBar3.Position:=hi(v shr 16);
end;end.