![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Artiom |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1031 Регистрация: 11.3.2003 Где: Минск\Баку Репутация: нет Всего: 17 |
Есть большой набор кнопок. У каждой кнопки должно быть свое контекстное меню (даже не меню, а по клику правой мышки должно вылетать окно). Я делаю так: написал класс
и перегружаю функцию contextMenuEvent, где анализирую имя вызвавшей кнопки и в зависимости от этого вывожу окно (или меню с набором пунктов). Есть ли способ организовать всё получше? Как-то неуклюже это. Получается, что объект класса MyButton при создании получает в нагрузку вещи, отноящиеся к другим кнопкам. -------------------- Если тебя жизнь трахает, значит, ты ещё живой |
|||
|
||||
| S.A.P. |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 9 Всего: 71 |
Artiom, объясни поподробнее, плиз каким образом имя кнопки влияет на меню и какие вещи получает в нагрузку MyButton от других кнопок?
|
|||
|
||||
| Artiom |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1031 Регистрация: 11.3.2003 Где: Минск\Баку Репутация: нет Всего: 17 |
Все кнопки описаны как объекты класса MyButton. А действия по правому клику мыши должны выполняться разные. По клику на одной кнопке должно выпадать одно окно, а по другой кнопке - другое.
-------------------- Если тебя жизнь трахает, значит, ты ещё живой |
|||
|
||||
| S.A.P. |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 9 Всего: 71 |
А не проще к конструктору добавить свой параметр, например указатель на объект окна, которое будет выскакивать? Тогда не надо везде держать информацию о других кнопках, просто создаешь кнопку с указанием окна через конструктор. Была похожая задача - делал так.
Это сообщение отредактировал(а) Perchilla - 18.3.2005, 22:41 |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |