The following code declares a HMSRec record with four byte fields. If TimeFormat is tfHMS, the first field specifies hours, the second field specifies minutes, the third field specifies seconds, and the fourth field corresponds to the unused most-significant byte of the tfHMS time format. A LongInt variable is typecast to an HMSRec record, then
the hours, minutes, and seconds of the Length of the loaded media are displayed in labels when the user clicks a button.
type
HMSRec = record
Hours: byte;
Minutes: byte;
Seconds: byte;
NotUsed: byte;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
TheLength: LongInt;
begin
{ Set time format - note that some devicesdo
n抰 support tfHMS }
MediaPlayer1.TimeFormat := tfHMS;
{ Store length of currently loaded media }
TheLength := MediaPlayer1.Length;
with HMSRec(TheLength)do
{ Typecast TheLength as a HMSRec record }
begin
Label1.Caption := IntToStr(Hours);
{ Display Hours in Label1 }
Label2.Caption := IntToStr(Minutes);
{ Display Minutes in Label2 }
Label3.Caption := IntToStr(Seconds);
{ Display Seconds in Label3 }
end;
end;