Моргание кнопки дисплея Nextion

Использование дисплеев и обсуждение пользовательских блоков к ним
Ответить
igee
Рядовой
Сообщения: 57
Зарегистрирован: 08.06.2016{, 09:15}
Репутация: 0
Откуда: Санкт-Петербург

Моргание кнопки дисплея Nextion

#1

Сообщение igee » 08.06.2016{, 20:12}

Доброго времени суток.
Прошу помочь в поиске решения проблемы, заключающейся в следующем:
В редакторе Nextion рисуем на дисплее две(три) кнопки. Для одной кнопки добавляем переменные состояний "нажата" и "отжата" (все как по мануалу к блоку отслеживания нажатия для Nextion в FLProg). Вторую(третью) оставляем как есть (она нужна для наглядности проблемы). Теперь я хочу, чтобы при нажатии на кнопку 1 загорался светодиод, а цвет кнопки, пока светодиод горит, оставался таким же как в нажатом состоянии кнопки. Т.е. параметр кнопки bco был таким же как bco2 (например кнопка остается зеленой, пока светодиод горит, а когда отжимаешь кнопку - светодиод гаснет, а кнопка становится серой).
Плата такая:

Логика следующая:
1. Кнопка "отжата" : основной цвет - серый, цвет нажатия - тёмно-серый.
2. Кнопка "нажата": основной цвет - зеленый, цвет нажатия - зеленый.

Нажали на кнопку ->загорелся диод + свич изменил значение переменной (col)  -> блок Number Change отправил сигнал на отправку измененных параметров кнопки в дисплей.

Теперь собственно проблема:
При такой схеме логика работает, но кнопка жутко промаргивает (перерисовывается по 2 раза на нажатие и 2 раза на отжатие кнопки). Ответ вроде бы очевиден, мол мы отправляем команду на изменение атрибута 2 раза за изменение триггера TT. Но почему перерисовка идет четырежды? И откуда вообще берется моргание, когда мы жмем на кнопку 2?  (Ту самую, которую мы добавили для наглядности, у которой вообще нажатие не отслеживается). Если убрать блок изменения атрибута и просто включать-выключать диод - никаких морганий нет.  В итоге получается, что при наличии блока отслеживания нажатий (для кнопки) с привязанным к нему блоком изменения атрибута кнопки будет происходить перерисовка этой кнопки при нажатии на любую кнопку на экране.

Как это лечить?
Вложения
4916846.jpg
Последний раз редактировалось igee 08.06.2016{, 22:44}, всего редактировалось 1 раз.

Ответить

Вернуться в «Дисплеи и индикаторы»