Многоуровневое меню

На этом форуме Вы можете задать вопросы знатокам программы и автору.
Saradon
Рядовой
Сообщения: 26
Зарегистрирован: 20.12.2016{, 17:49}
Репутация: 0
Откуда: Нижний Новгород
Контактная информация:

Многоуровневое меню

#21

Сообщение Saradon » 16.10.2017{, 11:34}

Извиняюсь сразу за некропостинг и за мою глупость...
Но скажите, как войти в подменю? Что-то у меня не срабатывает и прямого ответа я в интернетах не нашёл.

Аватара пользователя
Dev1
Майор
Сообщения: 1015
Зарегистрирован: 12.07.2016{, 18:04}
Репутация: 58
Откуда: Гондурас

Многоуровневое меню

#22

Сообщение Dev1 » 16.10.2017{, 12:26}

Saradon писал(а):Но скажите, как войти в подменю? Что-то у меня не срабатывает и прямого ответа я в интернетах не нашёл.
А нажать на кнопочку "Информация" основного блока меню религия не позволяет нажать?
Для вас уже все сделали и в рот положили, только жуйте...


СпойлерПоказать
2.4. «Входы «Войти в меню»/«Выйти из меню»» - При установке данного чек-бокса у блока появляются входы «ETM» и «ExTM». При активности группового пункта меню по переднему фронту импульса на входе «ETM» меню перейдёт на первый дочерний пункт данного группового пункта меню. При отсутствии у группового пункта меню дочерних элементов никаких действий произведено не будет. При активности любого пункта меню по переднему фронту на входе «ExTM» будет произведён переход на родительский для активного пункта меню пункт. Если родительским пунктом является главное меню - никаких действий произведено не будет.
Win7-64 FLProg v7.2.2 Portable :fie:

Saradon
Рядовой
Сообщения: 26
Зарегистрирован: 20.12.2016{, 17:49}
Репутация: 0
Откуда: Нижний Новгород
Контактная информация:

Многоуровневое меню

#23

Сообщение Saradon » 17.10.2017{, 22:20}

Dev1, спасибо.
Не сильно очевидно для меня почему-то...
В целом понял, остальное методом тыка буду докуривать.

Добавлено (17.10.2017, 22:17)
---------------------------------------------
Разобрался.
Точнее, просто скопировал с обучалки, глубоко не вдаваясь в логику.
Спасибо.
Последний раз редактировалось Saradon 17.10.2017{, 22:22}, всего редактировалось 1 раз.

Аватара пользователя
Dev1
Майор
Сообщения: 1015
Зарегистрирован: 12.07.2016{, 18:04}
Репутация: 58
Откуда: Гондурас

Многоуровневое меню

#24

Сообщение Dev1 » 17.10.2017{, 22:43}

Saradon писал(а):глубоко не вдаваясь в логику
Если не вдаваться, то и зачем все это нужно...
Win7-64 FLProg v7.2.2 Portable :fie:

bv7
Рядовой
Сообщения: 6
Зарегистрирован: 06.09.2017{, 20:22}
Репутация: 0
Откуда: Berezniki

Многоуровневое меню

#25

Сообщение bv7 » 09.11.2017{, 17:37}

Подскажите каким образом можно адаптировать код для дисплея nokia 5110.
Код тут. Статья
Пробовал библиотеку менять для работы с дисплеем, подключение дисплея соответственно менял, не работает. Очень хочется меню на дисплее 5110 сделать. Может кто допилит и блок сделает, буду очень благодарен.
Или может кто ссылку на пост с меню для дисплея 5110 даст. По форуму искал, не нашел, возможно искал плохо.
Последний раз редактировалось bv7 09.11.2017{, 17:41}, всего редактировалось 1 раз.
Жизнь хороша, если правильно подобрать антидепрессанты

av
Подполковник
Сообщения: 1424
Зарегистрирован: 25.09.2017{, 13:25}
Репутация: 126
Имя: Алексей

Многоуровневое меню

#26

Сообщение av » 09.11.2017{, 18:33}

bv7 есть тема от уважаемого Слимпер  Графические дисплеи в этой теме вы найдете все ответы на ваш вопрос.
Последний раз редактировалось av 09.11.2017{, 18:36}, всего редактировалось 1 раз.

bv7
Рядовой
Сообщения: 6
Зарегистрирован: 06.09.2017{, 20:22}
Репутация: 0
Откуда: Berezniki

Многоуровневое меню

#27

Сообщение bv7 » 10.11.2017{, 17:59}

Спасибо, как я понял подход там совсем другой. Уже перечитываю тему.
Жизнь хороша, если правильно подобрать антидепрессанты

Igor
Рядовой
Сообщения: 55
Зарегистрирован: 28.11.2020{, 06:20}
Репутация: 3
Имя: test

Многоуровневое меню

#28

Сообщение Igor » 11.04.2022{, 15:22}

Дабы не плодить темы спрошу здесь.
Нужно многоуровневое меню на штатном блоке.
Пока что просто термостат, но в дальнейшем будут проекты посерьезнее.
Имеем UNO, LCD1602, 5 кнопок
До чего додумался - вход в меню по долгому удержанию кнопки "меню", ей же листаются по порядку пункты меню.
еще 2 кнопки - вход и выход из меню
ещё 2 +/- значение пункта
Перебрал много других вариантов - работает не корректно
Посмотрите, может есть еще идеи как сделать?
MyThermostat.flp
(324.19 КБ) 26 скачиваний

av
Подполковник
Сообщения: 1424
Зарегистрирован: 25.09.2017{, 13:25}
Репутация: 126
Имя: Алексей

Многоуровневое меню

#29

Сообщение av » 11.04.2022{, 18:08}

Igor, попробуйте такой вариант. Работает следующим образом: используем три кнопки, при коротком нажатии кнопки меню вход в меню или вход в подменю. При длительном нажатии выход из меню или из подменю. Кнопками "+" и "-" переходим по пунктам меню или изменяем значение меню. Если кнопки не нажимаются в течении времени настроенного в параметрах блока "управление меню" (в проекте 45 секунд) происходит автоматический выход из меню. Проект создан в версии 7.4.6 !
MyThermostat_v.2.0.flp
(5.44 МБ) 46 скачиваний

valand
Рядовой
Сообщения: 61
Зарегистрирован: 15.07.2018{, 15:12}
Репутация: 13
Имя: Андрей

Многоуровневое меню

#30

Сообщение valand » 11.04.2022{, 19:06}

Еще примитивное трехкнопочное меню, на "умной" кнопке.
menu - длинное нажатие = вход в меню и выход из него\\короткое нажатие = перебор пунктов\\двойной клик = вход в подменю и выход из него.
vol+- изменение параметров.
MyThermostat кнопка гавербатон.flp
(4.23 МБ) 37 скачиваний
библиотека
GyverButton-main.zip
(104.92 КБ) 33 скачивания
но с предыдущим сообщением от av конечно не сравнится. там кнопка шикарна

av, а что за вход SW ?

av
Подполковник
Сообщения: 1424
Зарегистрирован: 25.09.2017{, 13:25}
Репутация: 126
Имя: Алексей

Многоуровневое меню

#31

Сообщение av » 11.04.2022{, 20:25}

valand писал(а):
11.04.2022{, 19:06}
av, а что за вход SW ?
К этому входу подключаем стандартный блок "ИЛИ" с множеством входов, к входам блока ИЛИ все какие есть кнопки. Создает "пикание" от нажатий кнопок какие есть в проекте. С выхода "BZ" (Buzzer) подаем на стандартный блок пищалки. Можно не использовать.

Отправлено спустя 2 минуты 25 секунд:
П.С. Забыл уточнить кнопки которые уже подключены к блоку управления меню к входу "SW" подключать не нужно, они подключены уже в самом блоке.

Igor
Рядовой
Сообщения: 55
Зарегистрирован: 28.11.2020{, 06:20}
Репутация: 3
Имя: test

Многоуровневое меню

#32

Сообщение Igor » 12.04.2022{, 19:21}

valand, Спасибо, но ваш вариант не работает как хотелось бы
av, Ваш вариант хорош! Только не выходит из меню, буду разбираться.
Еще раз спасибо! По сути нет разницы 3 или 5 кнопок. Главное чтобы было удобно!

Отправлено спустя 34 минуты 30 секунд:
av, Скетч использует 14794 байт (45%) памяти устройства. Всего доступно 32256 байт.
Глобальные переменные используют 540 байт (26%) динамической памяти,
Вот это перебор для такой простой функции

av
Подполковник
Сообщения: 1424
Зарегистрирован: 25.09.2017{, 13:25}
Репутация: 126
Имя: Алексей

Многоуровневое меню

#33

Сообщение av » 13.04.2022{, 00:48}

Igor писал(а):
12.04.2022{, 19:55}
Только не выходит из меню, буду разбираться.
Проверьте кнопка "меню" должна быть подтянута к плюс питания 5 в. и попробуйте убрать антидребезг на кнопке.
Igor писал(а):
12.04.2022{, 19:55}
Скетч использует 14794 байт (45%) памяти устройства. Всего доступно 32256 байт.
Глобальные переменные используют 540 байт (26%) динамической памяти,
Вот это перебор для такой простой функции
Меню использует строковые данные и переменные и чем больше пунктов меню тем больше занимает памяти. А так же другие блоки связанные с типом String будут увеличивать размер используемой памяти.
В вашем первом варианте проекта было всего два строковых выхода с блока меню, на дисплей. В проекте созданном мной добавился не только еще один строковый выход "NPM", но и еще добавлены блоки дисплея. Что в совокупности увеличило размер занимаемой памяти.

Отправлено спустя 11 минут 9 секунд:
P.S. Физическая кнопка должна замыкаться на GND. Так же дополнительно можно физически подтянуть кнопку через резистор 4,7кОм к +5v.

Igor
Рядовой
Сообщения: 55
Зарегистрирован: 28.11.2020{, 06:20}
Репутация: 3
Имя: test

Многоуровневое меню

#34

Сообщение Igor » 13.04.2022{, 09:22}

av, Это я заглючил. Все нормально выходит из меню, по долгому нажатию, но есть небольшой косчок - когда долго жмешь - выходит из меню и снова входит туда же. Можно как то это исправить? Может быть сделать вход тоже по долгому нажатию?

av
Подполковник
Сообщения: 1424
Зарегистрирован: 25.09.2017{, 13:25}
Репутация: 126
Имя: Алексей

Многоуровневое меню

#35

Сообщение av » 13.04.2022{, 09:24}

Igor, вы все таки проверьте без антидребезга !

Igor
Рядовой
Сообщения: 55
Зарегистрирован: 28.11.2020{, 06:20}
Репутация: 3
Имя: test

Многоуровневое меню

#36

Сообщение Igor » 13.04.2022{, 10:55}

av писал(а):
13.04.2022{, 09:24}
вы все таки проверьте без антидребезга !
еще хуже, скачет по разным меню

Igor
Рядовой
Сообщения: 55
Зарегистрирован: 28.11.2020{, 06:20}
Репутация: 3
Имя: test

Многоуровневое меню

#37

Сообщение Igor » 13.04.2022{, 11:09}

И для чего этот блок? что бы не 5 а 3 кнопки было? лишний геморрой))) И код вырастает

av
Подполковник
Сообщения: 1424
Зарегистрирован: 25.09.2017{, 13:25}
Репутация: 126
Имя: Алексей

Многоуровневое меню

#38

Сообщение av » 13.04.2022{, 11:22}

Igor писал(а):
13.04.2022{, 11:09}
И для чего этот блок? что бы не 5 а 3 кнопки было? лишний геморрой))) И код вырастает
Я предложил вариант, а использовать его или нет вам решать !

Igor
Рядовой
Сообщения: 55
Зарегистрирован: 28.11.2020{, 06:20}
Репутация: 3
Имя: test

Многоуровневое меню

#39

Сообщение Igor » 13.04.2022{, 12:51}

av писал(а):
13.04.2022{, 11:22}
Я предложил вариант, а использовать его или нет вам решать !
Спасибо! И всеже можно ли сделать вход в меню пл долгому нажатию?

Igor
Рядовой
Сообщения: 55
Зарегистрирован: 28.11.2020{, 06:20}
Репутация: 3
Имя: test

Многоуровневое меню

#40

Сообщение Igor » 17.04.2022{, 03:20}

А как сделать переключение дисплеев по одиночному нажатию кнопки? 1 раз - 1 дисплей, 2 раз - 2 дисплей, 3 раз - 1 дисплей и так по кругу

Ответить

Вернуться в «Спросить у знатоков»