![]() |
|
|
![]()
|
|
| Static |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 185 Регистрация: 6.11.2008 Репутация: нет Всего: 2 |
Подскажите, кто знает. Вот помнится мне, в Билдере сразу такая фича была - там можно было элементу тулбара прямо указать, с каким пунктом меню он ассоциирован. Используя code:blocks'овский wxSmith я такого не нашел. Не нашел и в документации к wxWidgets. Конечно, не исключено, что я слепой
--------------------
Я не настолько безнадежен, как кажется... |
|||
|
||||
| taiven |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 302 Регистрация: 30.6.2008 Репутация: нет Всего: 9 |
можно например так попробовать:
Это сообщение отредактировал(а) taiven - 3.2.2009, 15:52 |
||||
|
|||||
| Static |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 185 Регистрация: 6.11.2008 Репутация: нет Всего: 2 |
бесспорно...
Тут вопрос стоит даже не столько "как?", сколько "что выбрать?". Ибо вариантов множество. P.S. Спасибо за комментарий. --------------------
Я не настолько безнадежен, как кажется... |
|||
|
||||
| t_rex |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 143 Регистрация: 11.10.2006 Где: Украина, г. Запор ожье Репутация: 2 Всего: 7 |
Эээ.. так а ведь кнопки на тулбаре генерят не BUTTON_CLICKED, а MENU_SELECTED. Поэтому достаточно в EVENT_TABLE сделать запись с указанием идентификатора меню и обработчика соьытия, а потом это событие будет приходить и от тулбара и от пункта меню
--------------------
Жизнь не MultiEdit. Undo не сделаешьКросс-платформенное программирование с wxWidgetsБлог о программировании для мобильных устройтсвGoogle Android для программистов и пользователей |
|||
|
||||
| Static |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 185 Регистрация: 6.11.2008 Репутация: нет Всего: 2 |
хм. Чуть подробней, если можно. Каким образом получить одно и то же событие от пункта меню и кнопки тулбара?
Т.е. в EVENT_TABLE напишу я обработчик для....эээ....ну вот классический пример:
После этого, насколько я понимаю, у меня пункт меню, у которого айди=ID_ABOUT, будет вызывать OnAbout. А событие от тулбара где брать? P.S. Мне кажется, я что-то элементарное упустил в самом начале знакомства с wxWidgets --------------------
Я не настолько безнадежен, как кажется... |
|||
|
||||
| t_rex |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 143 Регистрация: 11.10.2006 Где: Украина, г. Запор ожье Репутация: 2 Всего: 7 |
Событие - это такая штука, которая привязывается не к самому пункту меню или кнопке на тулбаре, а к идентификатору и типу команды.
wxButton генерит wxCommandEvent с типом wxEVT_COMMAND_BUTTON_CLICKED и для обработки события от кнопки надо прописывать в EVENT_TABLE пункт EVT_BUTTON() На форме может быть десяток кнопок с одинаковыми идентификаторами, а обработчик у них будет один на всех потому что идентификатор + тип события совпадают. Дальше.. пункт меню и кнопка на тулбаре тоже генерят wxCommandEvent, но с друшим типом. И пункт меню и кнопка тулбара генерят тип события wxEVT_COMMAND_MENU_SELECTED поэтому если у тебя на форме есть пункт меню wxID_ABOUT и кнопка на тулбаре с таким же идентификатором (кстати есть для эбаутбокса стандартный идентификатор, свой не надо лепить), то в EVENT_TABLE для них будет одна общая запись с типом EVT_MENU и идентификатором wxID_ABOUT. Добавлено через 10 минут и 36 секунд
--------------------
Жизнь не MultiEdit. Undo не сделаешьКросс-платформенное программирование с wxWidgetsБлог о программировании для мобильных устройтсвGoogle Android для программистов и пользователей |
|||
|
||||
| Static |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 185 Регистрация: 6.11.2008 Репутация: нет Всего: 2 |
все, грейт сенкс. Я почему-то думал, что идентификатор должен быть уникальным.
--------------------
Я не настолько безнадежен, как кажется... |
|||
|
||||
![]()
|
| Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |