Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt GUI _ QListWidget и контекстное меню

Автор: RazrFalcon 16.5.2011, 21:08

Меня появляется не там где нужно.

http://itmages.ru/image/view/191267/aaf78a71

 list.cpp.zip ( 3.55 килобайт ) : 162
 

Автор: RazrFalcon 16.5.2011, 22:13

Сделал наследника QListWidget и поместил туда

void contextMenuEvent(QContextMenuEvent* e);
со всеми вытекающими. Контестное меню начало появятся где надо. Почему же стандартный способ не пашет? Бага?!

Автор: MoPDoBoPoT 17.5.2011, 21:06

Потому что ты преобразовывал координаты вызова контекстного меню неправильно. Контекстное меню вызывается для listWidget'a, а не для главной формы (this), поэтому надо делать так:

QPoint globalPos = listWidget->viewport()->mapToGlobal(pos);
...

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)