Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Qt. Организация контекстного меню


Автор: Artiom 18.3.2005, 19:12
Есть большой набор кнопок. У каждой кнопки должно быть свое контекстное меню (даже не меню, а по клику правой мышки должно вылетать окно). Я делаю так: написал класс
Код

class MyButton:public QPushButton

и перегружаю функцию contextMenuEvent, где анализирую имя вызвавшей кнопки и в зависимости от этого вывожу окно (или меню с набором пунктов).
Есть ли способ организовать всё получше? Как-то неуклюже это. Получается, что объект класса MyButton при создании получает в нагрузку вещи, отноящиеся к другим кнопкам.

Автор: S.A.P. 18.3.2005, 19:23
Artiom, объясни поподробнее, плиз каким образом имя кнопки влияет на меню и какие вещи получает в нагрузку MyButton от других кнопок?

Автор: Artiom 18.3.2005, 22:19
Все кнопки описаны как объекты класса MyButton. А действия по правому клику мыши должны выполняться разные. По клику на одной кнопке должно выпадать одно окно, а по другой кнопке - другое.

Автор: S.A.P. 18.3.2005, 22:40
А не проще к конструктору добавить свой параметр, например указатель на объект окна, которое будет выскакивать? Тогда не надо везде держать информацию о других кнопках, просто создаешь кнопку с указанием окна через конструктор. Была похожая задача - делал так.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)