Как включить контекстное меню в VerticalHeaderItem внутри QTableWidget?

У меня есть виджет QTable, где я установил

setVerticalHeaderItem(0, QTableWidgetItem("some header", 0))

Я установил контекстное меню

setContextMenuPolicy(Qt.ActionsContextMenu)

и он отлично работает с элементами моей таблицы, кроме 1-го столбца, то есть с элементом VerticalHeaderItem. По сути, когда я щелкаю правой кнопкой мыши элемент 1-го столбца, контекстное меню не появляется, а при нажатии на любые другие элементы> 1-й столбец вызывает всплывающее контекстное меню (заполненное определенными мной QActions, не показанными здесь для ясности) .

Есть ли какой-либо атрибут, который я должен установить, чтобы 1-й столбец (VerticalHeaderItem) реагировал на щелчок правой кнопкой мыши? Qt.ItemFlags может быть? Если да, может ли кто-нибудь написать фрагмент кода, как правильно его установить? Желательно на Python, но C++ тоже подойдет.

Моя конфа: QT 4.5.2, PyQT 4.5.4, под Windows XP SP2.


person Piotr Byzia    schedule 23.10.2009    source источник


Ответы (1)


Заголовки сами по себе являются виджетами. Итак, установите политику контекстного меню на myTableWidget.verticalHeader().

person Lukáš Lalinský    schedule 23.10.2009
comment
Чтобы задать дополнительный вопрос (я просто столкнулся с точно такой же проблемой): как затем извлечь строку, по которой щелкнули? - person qdot; 09.08.2014