![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
fancer.lancer |
![]()
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 5 Регистрация: 23.3.2010 Пользователь №: 1555 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Здравствуйте форумчане, при написании Гуя на QT4 столкнулся с проблемой. Мне необходимо передать в обработчик одного из пункова контекстного меню координаты, которые соответствуют точке, откуда это меню было вызвано. Есть ли какой-либо метод (функция) или какой-либо способ сделать это без особенных извратов, таких как хранить где-нибудь коориднаты нажатия из QContextMenuEvent?
Просмотрел уже весь assistant, прочитал много примеров, но так ничего похожего не нашел. |
|
|
![]() |
fancer.lancer |
![]()
Сообщение
#2
|
Новичок Группа: Новичок Сообщений: 5 Регистрация: 23.3.2010 Пользователь №: 1555 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Извиняюсь за небольшую задержку)) Всем спасибо, за помощь))
Вообщем предложенный мной способ в итоге вообще не годиться((( если изначально QMenu был создан статически, то мы получаем указатель на нусуществующий элемент, если же динамически, то у меня почему-то опять же приложение падало при обращении к методам полученного указателя на QMenu, так и не выяснил почему((( Есть другой вариант: если мы выделили динамически память для объекта QMenu, то всегда можем узнать его координаты, если знаем указатель на этот объект. Тогда я решил просто создать дополнительное поле класса с этим QMenu. Теперь странность: при вызове контекстного меню мы получаем координаты относительно левого верхнего угла родительского виджета (то есть виджета, на котором это меню вызвано) как и нужно, а если пытаюсь посмотреть координаты самого меню, то они получаются относительно левого верхнего угла монитора. Вообщем остается одно - считать координаты вручную((((( |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 21.8.2025, 18:57 |