![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Jan 2008
Сообщений: 50
|
Есть к примеру 3 класса TMain, TMenu, TMenuItem
Где TMain – основной класс который содержит в себе объект класса TMenu TMenu – класс меню который содержит в себе массив объектов TMenuItem, которые представляют собой кнопки меню. Так вот у меня вопрос как правильно организовать доступ к другим объектам и функциям содержащимся в TMain при клике по кнопки меню . На ум приходят 3 варианта: 1) Передавать в конструктор TMenu и TMenuItem ссылку на TMain 2) В TMain сделать public static переменную которая бы содержала ссылку на TMain 3) Создать свои сообщения клика по кнопки меню для TMenu которые затем обрабатывать в TMain |
|
|||||
|
третий
__________________
blog.diestro.ru |
|
|||||
|
Регистрация: Apr 2010
Адрес: Earth
Сообщений: 1,897
|
3) Событийная модель
или 4) Callbacks |
|
|||||
|
Регистрация: Jan 2008
Сообщений: 50
|
При 3-м варианте нужно обработчик события клика для TMenuItem создавать в TMenu
чего не хотелось бы делать вне TMenuItem. i.o. , а можно поподробней про 4-й вариант |
|
|||||
|
Цитата:
Вам достаточно в TMenuItem диспатчить события с баблингом. И подписаться на них можете единожды в TMenu и там же обрабатывать.
__________________
blog.diestro.ru |
|
|||||
|
Регистрация: Jan 2008
Сообщений: 50
|
Цитата:
|
|
|||||
|
О зачем меню что то должно знать о том что происходит вокруг него? Меню должно знать только об айтемах которое оно содержит.
__________________
blog.diestro.ru |
|
|||||
|
Регистрация: Jan 2008
Сообщений: 50
|
Что то я не пойму, что такое айтема?
|
|
|||||
|
это Item.
А что меню должно брать из Main?
__________________
blog.diestro.ru Последний раз редактировалось Diestro; 12.07.2010 в 13:13. |
|
|||||
|
Регистрация: Jan 2008
Сообщений: 50
|
Обьект Video
|
![]() |
![]() |
Часовой пояс GMT +4, время: 21:24. |
|
|
« Предыдущая тема | Следующая тема » |
|
|