Виджет "Таймер" (с поддержкой тем)
Виджет "Таймер" позволяет отслеживать время, используя один из двух режимов: обратный отсчет для отслеживания времени и инициирования события, а также секундомер для измерения длительности.
| Этот виджет также доступен как веб-компонент в библиотеке SDK веб-компонентов ThingWorx. |
Анатомия
1. Метка виджета
2. Значение времени, сформатированное для отображения дней и миллисекунд
3. Значок виджета
Конфигурирование формата времени
Виджет таймера имеет несколько настраиваемых параметров для настройки отображения времени. Свойство DisplayMilliseconds добавляет миллисекунды в формат времени для более точной синхронизации.
Для подсчета количества дней, когда время превышает 24 часа, задайте для свойства DisplayDays значение true.
Конфигурирование режима таймера
Свойство TimerMode управляет подсчетом времени в виджете. Можно переключать два режима: countdown (обратный отсчет) и stopwatch (секундомер)
• В режиме обратного отсчета таймер запускается с начального значения и счет идет до нуля. Этот режим полезен, если необходимо измерить конкретную длительность, например обратный отсчет до события или до крайнего срока. Когда таймер достигает нулевого значения, инициируется событие CountdownCompleted. Это событие можно привязать к инициированию конкретных действий, таких как отображение уведомления или выполнение функции или сервиса. Ниже перечислены свойства, которые можно задать или привязать в этом режиме.
◦ InitialValue - задайте это свойство, чтобы определить время начала в миллисекундах.
◦ Running - привяжите это логическое свойство к управлению началом и остановкой обратного отсчета.
◦ CountdownCompleted - привяжите это событие, чтобы инициировать действия по окончании обратного отсчета.
◦ Reset - привяжите этот сервис, чтобы сбросить обратный отсчет до начального значения.
◦ Value - возвращает текущее значение времени в миллисекундах, которое обновляется по мере работы таймера.
• В режиме секундомера таймер запускается с нуля и @@@[таймер увеличивается, измеряя? может, так: В режиме секундомера таймер запускается с нуля и показывает длительность текущей задачи в реальном времени?]увеличивается с течением времени, измеряя длительность текущей задачи. Этот режим идеально подходит для отслеживания продолжительности заданий или событий, таких как расчет времени тренировки или кулинарной сессии. Таймер ведет отсчет, пока не будет остановлен или сброшен вручную. Ниже перечислены свойства, которые можно задать или привязать для этого режима.
◦ InitialValue - задайте это свойство, чтобы определить время начала в миллисекундах.
◦ Running - привяжите это логическое свойство, чтобы управлять запуском и остановкой секундомера.
◦ Reset - привяжите этот сервис, чтобы сбросить секундомер до нуля.
◦ Value - возвращает текущее значение времени в миллисекундах, которое обновляется по мере работы таймера.
Применение форматирования состояния к виджету
Можно сконфигурировать форматирование состояния, чтобы динамически задавать стиль виджета "Таймер" в соответствии с его значением. В отличие от свойства AlternateStyle это свойство позволяет определить несколько состояний, применяемых в зависимости от текущего значения виджета. А значит, можно применять стили виджета для различных состояний. На следующем рисунке показана конфигурация форматирования состояния для виджета "Таймер" в режиме обратного отсчета. В зависимости от значений применяются два стиля состояния. В первом состоянии цвет текста изменяется на оранжевый, если значение меньше 20000 миллисекунд. Во втором состоянии цвет изменяется на красный, если значение меньше 10000 миллисекунд.
| При применении форматирования состояния может отображаться только один значок для альтернативного и стандартного состояний виджета. |
Задание начального значения
Можно использовать свойство виджета InitialValue, чтобы задать время начала для таймера. Однако если это свойство привязано, таймер не обновляется автоматически с возникновением нового значения привязки. В этом случае необходимо инициировать сервис Reset, чтобы убедиться, что таймер использует обновленное значение.
Применение альтернативного стиля
Виджет "Таймер" поддерживает альтернативное состояние, которое изменяет стиль виджета по умолчанию. Это состояние можно использовать для задания визуального индикатора, помогающего пользователям легко различать различные состояния или состояния таймера. Чтобы включить это состояние, задайте для свойства AlternateStyle значение "Истина". Например, в приложении для мониторинга производства таймер может отображать стандартным цветом оставшееся время. Когда для обратного отсчета остается последних 10 секунд, таймер может переключиться на красный цвет, предупреждая пользователя о том, что время истекает. Чтобы добавить пользовательский значок для этого состояния, используйте свойство AlternateIcon. Можно настроить стили default (по умолчанию) и alternate (альтернативный) для каждого состояния виджета, используя свойства, доступные на панели Свойства стиля. На следующем изображении показан стиль по умолчанию для альтернативного состояния виджета.
Ниже приведен приоритет стилей от высокого к низкому, если применяются вместе альтернативный стиль и форматирование состояния.
1. Форматирование состояния
2. Альтернативный стиль
3. Свойства стиля виджета
Свойства виджета
Имя свойства | Описание | Базовый тип | Значение по умолчанию | Доступно для привязки? | Локализуемое? |
|---|
DisplayMilliseconds | Добавляет миллисекунды в формат времени. Если задано значение true, миллисекунды отображаются в таймере. | BOOLEAN | False | Д | Н |
ValueLabelType | Задает тип метки для значения таймера. | STRING | Подзаголовок | Н | Н |
Icon | Задает изображение значка для таймера. | MEDIALINK | Пустой | Н | |
AlternateIcon | Задает изображение значка для таймера в альтернативном стиле. | MEDIALINK | Пустой | Н | Н |
IconAlignment | Задает выравнивание значка относительно значения таймера. | STRING | Справа | Н | Н |
AlternateIconAlignment | Задает выравнивание альтернативного значка относительно значения таймера. | STRING | Справа | Н | Н |
IconSize | Указывает ширину и высоту значка в пикселях. | NUMBER | 16 | Д | Н |
AlternateIconSize | Указывает ширину и высоту значка альтернативного стиля в пикселях. | NUMBER | 16 | Д | Н |
AlternateStyle | Задает для таймера альтернативное состояние с использованием альтернативного стиля и альтернативного значка. | BOOLEAN | False | Д | Н |
Label | Задает метку виджета таймера. | STRING | Пустой | Д | Д |
LabelAlignment | Задает выравнивание метки виджета относительно контейнера. | STRING | Слева | Н | Н |
LabelType | Задает тип метки для текста метки таймера. | STRING | Метка | Н | Н |
HorizontalAlignment | Задает выравнивание виджета по горизонтали. | STRING | Слева | Д | Н |
Running | Состояние таймера. Задайте значение true, когда таймер запущен. Это свойство можно привязать, чтобы приостановить таймер. | BOOLEAN | True | Д | Н |
InitialValue | Задает начальное значение времени в миллисекундах. Используйте это свойство, чтобы задать значение обратного отсчета при инициировании события сброса. | NUMBER | 0 | Д | Н |
DisplayDays | Отображает дни рядом с часами, минутами и секундами в форматированном значении времени, если значение превышает 24 часа. | BOOLEAN | True | Д | Н |
Value | Текущая длительность таймера в миллисекундах. | NUMBER | Н/Д | Д | Н |
Reset | Служба, которая сбрасывает таймер до значения по умолчанию, заданного с помощью InitialValue. Чтобы остановить таймер, можно также задать для свойства Running значение false. | Сервис | | Д | Н |
TimerMode | Задает режим таймера для виджета. В режиме секундомера значение таймера увеличивается для измерения длительности задания. В режиме обратного отсчета значение таймера, заданное с помощью InitialValue, уменьшается, и событие инициируется при достижении нуля. | STRING | Секундомер | Д | Н |
CountdownCompleted | Событие, инициируемое, если значение таймера достигает нуля в режиме обратного отсчета. | Событие | | Д | Н |