Другой способ создания пользовательских контекстных меню - реализовать слот для сигнала QWidget::customContextMenuRequested()
. Там вы можете запросить ячейку под позицией (QTableWidget::itemAt()
- следите за глобальным отображением виджетов!), А затем создать собственное меню, используя QMenu
и QAction
.
Кроме того, я бы заранее построил меню, а затем только exec () в слоте.
Помните, что вы должны изменить свойство QWidget::ContextMenuPolicy
виджета на Qt::CustomContextMenu
!