03-20-2024, 10:04 AM
Для того чтобы добавить в приложение такой градусник нам понадобится несколько простых действий.
Hello World!:
- Сообщений не найдено.
- Скачать изображение градусника, либо нарисовать самостоятельно
- Удалить из него заполненную шкалу, если такая имеется
- Загрузить изображение в динамическую библиотеку
- Создать пустой контейнер и вставить код html в поле "Данные"
- Код:
<div style = 'background:url(/Winnum/resources/themes/current/images/app/ui/designer/media/24/Weather-Thermometer-Clipart-Black-and-White-1.png); width:100%; height:100%; background-size: 100% 100%'>
<div id = 'termometr' style = 'background:red; width:25%; height:61%;position: absolute;top:20%;left:36%'>
<div id = 'temperature' style = 'background:white;width:100%; height:50%;position: absolute;top:0%;left:0%'>
</div>
</div>
<div style = 'width:55%; height:25%;position: absolute;top:74%;left:21%'>
<svg width=100% height = 100%>
<ellipse id = "ellipce" fill = "red" cx=50% cy=50% rx=46% ry=41% />
</svg>
</div>
</div>
- Отредактировать ширину и высоту шкалы (откалибровать градусник). Редактировать нужно <div id = 'termometr'> подстроить параметры ширины и высоты шкалы, и ее расположение (top, left). Для того чтобы термометр растягивался вместе с контейнером, и шкала не съезжала все параметры должны быть указаны только в %.
- Что касается красного круга - то это svg рисунок, он векторный, а значит может растягиваться без потери качества, rx/ry - радиусы эллипса, а позицию ему задает его контейнер, его также нужно выставить на нужное место.
- Подключить к действующему сигналу для изменения шкалы градусника
- Код:
function termoparameter(t,color){
document.getElementById('termometr').style.background = color;
document.getElementById('ellipce').style.fill = color;
document.getElementById('temperature').style.height = 50 - t + '%';
}
- Параметр t - это и есть значение температуры, color - это цвет шкалы и эллипса. Значение сигнала можно получить как через интерфейс редактора, так и с помощью baseSdkUtils.service.WNConnectorHelper.getSignal, или вы получаете температуру каким-либо еще способом.
Hello World!:
- Сообщений не найдено.

