16
Ваши вопросы / Re: Время работы за сутки
« : 15 Марта 2024, 13:32:29 »
Здравствуйте.
Цитировать
Результат выводится в поле Calendar, с отключенным значением даты и временем в формате hh:mm:ssВ компонент "Календарь" и переменную типа "DateTime" нельзя вывести значение времени больше чем 23:59:59. Если время наработки/простоя может быть больше 23:59:59, то его можно выводить в компонент "Текст", как это описано в примере №2 по ссылке.
Проблема в том, что если агрегат работал все 24 часа, то в поле Calendar выводится 00:00:00
Цитировать
Как сделать так, чтобы в таком случае отображалось 24:00:00 ?Значение 24:00:00 можно отобразить в компоненте "Текст". Для этого компонент "Текст" нужно связать с переменной "DateTime_Val" и на событие OnDataChange написать универсальный скрипт:
Код: (delphi)
var
aSeconds: Int64;
begin
if Sender is TM_Text then // проверяем, что Sender это текст
with Sender as TM_Text do // приводим Sender к типу "TM_Text"
begin
aSeconds := SecondsBetween(0, DateTime_Val.AsDateTime); // получить кол-во секунд
Text := SecondsToStr(aSeconds); // переводит секунды в строку вида "чч:мм:сс".
end;
end.