|
Организация меню. |
|
|
|
 |
Ответов
|
Oct 25 2016, 11:26
|
Профессионал
    
Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075

|
а что если так CODE typedef struct SCREEN1_S { uint8_t item_idx; }SCREEN1;
typedef struct SCREEN2_S { uint8_t item_idx; }SCREEN2;
typedef struct SCREEN3_S { uint8_t item_idx; }SCREEN3;
typedef struct SCREENS_S { SCREEN1 scr1; SCREEN2 scr2; SCREEN3 scr3; }SCREENS; нет. структура хранит выбранный раздел меню но из нее не видно какой экран выбран. о. есть идея. можно немного модифицировать. CODE typedef struct SCREEN1_S { uint8_t item_idx; uint8_t selected; }SCREEN1;
typedef struct SCREEN2_S { uint8_t item_idx; uint8_t selected; }SCREEN2;
typedef struct SCREEN3_S { uint8_t item_idx; uint8_t selected; }SCREEN3;
typedef struct SCREENS_S { SCREEN1 scr1; SCREEN2 scr2; SCREEN3 scr3; }SCREENS;
теперь есть индикация выбранного экрана.
Сообщение отредактировал Jenya7 - Oct 25 2016, 11:34
|
|
|
|
|
Oct 25 2016, 11:35
|
Гуру
     
Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369

|
Цитата(Jenya7 @ Oct 25 2016, 14:26)  а что если так Код typedef struct SCREEN1_S { uint8_t item_idx; }SCREEN1;
typedef struct SCREEN2_S { uint8_t item_idx; }SCREEN2;
typedef struct SCREEN3_S { uint8_t item_idx; }SCREEN3;
typedef struct SCREENS_S { SCREEN1 scr1; SCREEN2 scr2; SCREEN3 scr3; }SCREENS; Ну просто беда с Вами... Забудьте, что у Вас "экраны"... Вы же не картины в Эрмитаже рисуете. Любой Ваш "экран" - это набор примитивов графики, их координаты на экране, тексты и их координаты на экране и фон... Соответственно, определите один "экран", т.е создайте его описание как массив или структуру или класс с этими графическими примитивами... Потом соответственно, главный экран, соответствующий верхнему автомату будет содержать массив экранов и указатель на активный по состоянию главного автомата...
--------------------
www.iosifk.narod.ru
|
|
|
|
|
Oct 25 2016, 11:45
|
Профессионал
    
Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075

|
Цитата(iosifk @ Oct 25 2016, 16:35)  Ну просто беда с Вами... Забудьте, что у Вас "экраны"... Вы же не картины в Эрмитаже рисуете. Любой Ваш "экран" - это набор примитивов графики, их координаты на экране, тексты и их координаты на экране и фон... Соответственно, определите один "экран", т.е создайте его описание как массив или структуру или класс с этими графическими примитивами... Потом соответственно, главный экран, соответствующий верхнему автомату будет содержать массив экранов и указатель на активный по состоянию главного автомата... У меня библиотека которая создает экраны. Каждый экран это набор графических элементов - кнопки, лейблы, чекбоксы, и.т.д Я могу вызвать экран и работать с графическими элементами - в моем случае это элементы типа LABEL - каждый LABEL это пункт меню. мне лишь нужно знать выбранный экран и пункт меню в нем.
|
|
|
|
Сообщений в этой теме
Jenya7 Организация меню. Oct 25 2016, 10:37 iosifk Цитата(Jenya7 @ Oct 25 2016, 13:37) У мен... Oct 25 2016, 11:06 Jenya7 Цитата(iosifk @ Oct 25 2016, 16:06) Я дел... Oct 25 2016, 11:11  iosifk Цитата(Jenya7 @ Oct 25 2016, 14:11) Но до... Oct 25 2016, 11:18 k155la3 Цитата(Jenya7 @ Oct 25 2016, 13:37) У мен... Oct 25 2016, 12:49 Jenya7 Цитата(k155la3 @ Oct 25 2016, 17:49) Если... Oct 25 2016, 13:01  _pv Цитата(Jenya7 @ Oct 25 2016, 19:01) мне д... Oct 25 2016, 15:26   k155la3 Цитата(_pv @ Oct 25 2016, 18:26) меню сде... Oct 26 2016, 06:25    _pv Цитата(k155la3 @ Oct 26 2016, 13:25) В см... Oct 26 2016, 11:06     Jenya7 Цитата(_pv @ Oct 26 2016, 17:06) У каждог... Oct 27 2016, 05:56     k155la3 Цитата(_pv @ Oct 26 2016, 14:06) У каждог... Oct 27 2016, 06:18   Jenya7 Цитата(_pv @ Oct 25 2016, 21:26) меню сде... Oct 26 2016, 07:12 XVR Вам нужен стек, каждый элемент которого хранит ном... Oct 26 2016, 08:03 Jenya7 понял. спасибо. Oct 27 2016, 07:22 uriy Я тоже в нескольких проектах применял micromenu. Р... Oct 28 2016, 06:00 Jenya7 Цитата(uriy @ Oct 28 2016, 12:00) Я тоже ... Oct 29 2016, 16:07 Jenya7 портирую micromenu в проект и там есть такой дифа... Nov 3 2016, 06:52 k155la3 Цитата(Jenya7 @ Nov 3 2016, 09:52) . . . ... Nov 3 2016, 08:25  Jenya7 Цитата(k155la3 @ Nov 3 2016, 14:25) Распо... Nov 3 2016, 08:36 Jenya7 кто нибудь портировал под ARM это меню? начинает б... Nov 3 2016, 09:59 k155la3 Цитата(Jenya7 @ Nov 3 2016, 12:59) кто ни... Nov 3 2016, 10:07  Jenya7 Цитата(k155la3 @ Nov 3 2016, 16:07) Вы не... Nov 3 2016, 10:37   _pv Цитата(Jenya7 @ Nov 3 2016, 17:37) так то... Nov 3 2016, 16:50    Jenya7 Цитата(_pv @ Nov 3 2016, 22:50) чему там ... Nov 4 2016, 10:34     _pv Цитата(Jenya7 @ Nov 4 2016, 16:34) а поче... Nov 4 2016, 11:16      Jenya7 Цитата(_pv @ Nov 4 2016, 17:16) наследие ... Nov 4 2016, 11:50       _pv Цитата(Jenya7 @ Nov 4 2016, 17:50) я поня... Nov 4 2016, 12:38        Jenya7 Цитата(_pv @ Nov 4 2016, 18:38) 6 указате... Nov 4 2016, 13:10 Jenya7 Вобщем прикрутил таки
https://github.com/abcminiu... Jul 29 2018, 07:12 inventor я взял за образец меню от миландра
перетащил на св... Sep 6 2018, 15:59 Jenya7 Цитата(inventor @ Sep 6 2018, 20:59) я вз... Sep 7 2018, 06:37 x893 Если не секрет - Какая идея очень даже интересная ... Sep 7 2018, 07:00 Jenya7 Цитата(x893 @ Sep 7 2018, 13:00) Если не ... Sep 12 2018, 10:28
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|