Here is the translation of the provided text into Russian:
Приведенный код предназначен для отображения текущего номера трека и времени, прошедшего в минутах и секундах, при воспроизведении аудио-CD с помощью компонента Media Player в Delphi.
Вот подробное описание того, как это работает:
Процедура Timer1Timer: она вызывается регулярными интервалами (установленными для Timer1) для обновления отображения.
MediaPlayer1: компонент Media Player, который контролирует воспроизведение аудио-CD.
Position: свойство Media Player, возвращающее текущую позицию воспроизведения в миллисекундах.
Функции MCI_...: они используются для извлечения номера трека, минуты и секунды из свойства Position.
Однако есть более эффективный способ форматирования времени, прошедшего с помощью встроенной функции Delphi Format:
Форматтер %02d используется для добавления ведущих нулей к значениям минуты и секунды, если они меньше 10.
Также было бы хорошим идеалом проверять ошибки при вызове функций MCI_..., так как они могут возвращать код ошибки, который может не быть обработан правильно в этом примере.
Вот обновленный код:
procedure TForm1.Timer1Timer(Sender: TObject);
var
Trk: Word;
Min: Word;
Sec: Word;
begin
try
with MediaPlayer1 do
begin
Trk := MCI_TMSF_TRACK(Position);
Min := MCI_TMSF_MINUTE(Position);
Sec := MCI_TMSF_SECOND(Position);
Label1.Caption := Format('%.2d', [Trk]);
Label2.Caption := Format('%02d:%02d', [Min, Sec]);
end;
except
// Обрабатывайте ошибку здесь
end;
end;
Не забудьте настроить компонент Media Player правильно и начать воспроизведение аудио-CD перед запуском этого кода.
В статье описывается способ отображения времени в формате минуты и секунды при проигрывании музыки с Audio CD с помощью компонента MediaPlayer1 и таймера Timer1 в Delphi.
Комментарии и вопросы
Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS