Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Kirsten от Август 16, 2006, 22:38



Название: QTreeWidget выделение при правом клике
Отправлено: Kirsten от Август 16, 2006, 22:38
Можно ли стандартным способом сдлеать так, чтобы при клике правой кнопкой мыши на item он выделялся(по умолчанию веделение идет только при клики левой кнопкой) ? Или событие клика перехватывать и самостоятельно выделять ?


Название: QTreeWidget выделение при правом клике
Отправлено: bigirbis от Август 17, 2006, 08:36
Код:
treeWidget->setContextMenuPolicy ( Qt::CustomContextMenu );
connect( treeWidget, SIGNAL( customContextMenuRequested() ), SLOT( setMySelection() ) );

А далее уже раскручиваешь в теле
Код:
setMySelection()


Название: QTreeWidget выделение при правом клике
Отправлено: Kirsten от Август 17, 2006, 18:31
Спасибо, тут еще одна проблема возникла, в setMySelection передается QPoint, в локальных координатах treeWidget, пытаюсь отобразить QMenu в точке клика, если QMenu инициализировать динамически, передав в конструкор указатель treeWidget, то меню все равно появляется с учетом координат главного виджета(т.е не в месте клика), если инициализация статическая, и используется метод setParent, то меню сначала на долю секунды появляется с учетом координат главного виджета, потом исчезает и появляется на месте клика, как это можно исправить без прибавления к этим координатам координаты положения treeWidget на главном виджете ?

добавлено спустя 12 минут:

 все, проблема решена при помощи QWidget::mapToGlobal