Bolje je da ne koristiš nešto što ne razumeš i ne možeš da objasniš na ispitu, ali evo koda:
Code:
type
Tvolume = record
left, right :word;
end;
var
fmixerhandle:hmixer;
procedure Fillstruct(control:Pmixercontrol;var Cdetails:Tmixercontroldetails);
begin
cdetails.cbStruct:=sizeof(cdetails);
cdetails.dwControlID:=control.dwControlID ;
cdetails.cbDetails:=sizeof(integer);
cdetails.hwndOwner :=0;
end;
function setvolume(control:Pmixercontrol; volume:Tvolume):boolean;
var
details:array [0..30] of Integer;
cdetails:TMIXERCONTROLDETAILS;
begin
fillstruct(control,cdetails);
cdetails.cChannels :=2;
cdetails.paDetails:=@details;
details[0]:=volume.left;
details[1]:=volume.right;
result:=MIXERSETCONTROLDETAILS(fmixerhandle,
@cdetails,MIXER_GETCONTROLDETAILSF_VALUE)=0;
end;
function getvolume(control:Pmixercontrol;var volume:Tvolume):boolean;
var
details:array [0..30] of Integer;
cdetails:TMIXERCONTROLDETAILS;
begin
fillstruct(control,cdetails);
cdetails.cChannels :=2;
cdetails.paDetails:=@details;
result:=MIXERGETCONTROLDETAILS(fmixerhandle,
@cdetails,MIXER_GETCONTROLDETAILSF_VALUE)=0;
volume.left:=details[0];
volume.right:=details[1];
end;
Možda nešto i nedostaje, ali suština je u tome.
Kako se zove komponenta koja se koristi za periodično obavljanje nekog posla, na svaku sekundu, na primer?
Kako se zove property u TMediaPlayer komponenti koja pokazuje koliko je sekindi proteklo od početka audio streama?