{Amigo, coloquei os codigos como estão abaixo, mas deu erro. Pergunto: as variaveis eu terei que colocar acima de implementation ou pode ficar onde esta? coloquei tb na propriedade max de tractbarr valor 15. se possivel corrija p mim. Desde já agradeço.} unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, MMSystem, ComCtrls, Gauges; type TForm1 = class(TForm) TrackBar1: TTrackBar; Gauge1: TGauge; procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} ////procedure TForm1.FormCreate(Sender: TObject); ////begin procedure TForm1.tbVolumeChange(Sender: TObject); // TrackBar var Count, i: integer; begin Count := waveOutGetNumDevs; for i := 0 to Count do begin waveOutSetVolume(i,longint(tbVolume.position*4369)*65536+longint(tbVolume.position*4369)); end; end; end; end.