FLProg
Вход на сайт
Логин:
Пароль:
Мы в VK
Поиск
Статистика


Яндекс.Метрика
Суббота, 10.12.2016, 15:42
Приветствую Вас Гость | RSS
Главная | Регистрация | Вход

Поиск по сайту


Форум
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: support, Сергей 
Форум » Основной » Обсуждение программы FLProg (Не багтрекер, и не хотелки. Делимся опытом!!) » Моргание кнопки дисплея Nextion (Поиск решения проблемы)
Моргание кнопки дисплея Nextion
igee
Дата: Среда, 08.06.2016, 20:12 | Сообщение # 1
Рядовой
Группа: Проверенные
Сообщений: 11
Награды: 0
Репутация: 0
Статус: Offline
Доброго времени суток.
Прошу помочь в поиске решения проблемы, заключающейся в следующем:
В редакторе Nextion рисуем на дисплее две(три) кнопки. Для одной кнопки добавляем переменные состояний "нажата" и "отжата" (все как по мануалу к блоку отслеживания нажатия для Nextion в FLProg). Вторую(третью) оставляем как есть (она нужна для наглядности проблемы). Теперь я хочу, чтобы при нажатии на кнопку 1 загорался светодиод, а цвет кнопки, пока светодиод горит, оставался таким же как в нажатом состоянии кнопки. Т.е. параметр кнопки bco был таким же как bco2 (например кнопка остается зеленой, пока светодиод горит, а когда отжимаешь кнопку - светодиод гаснет, а кнопка становится серой).
Плата такая:

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

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

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

Как это лечить?
Прикрепления: 4916846.jpg(31Kb)


Сообщение отредактировал igee - Среда, 08.06.2016, 22:44
 
Форум » Основной » Обсуждение программы FLProg (Не багтрекер, и не хотелки. Делимся опытом!!) » Моргание кнопки дисплея Nextion (Поиск решения проблемы)
Страница 1 из 11
Поиск:

FLProg © 2016
Яндекс.Метрика