Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct
Context menu in QListWidget - reference to the item
never_ever last edited by
I have problem with context menu. I have created context menu in QListWidget, and now menu shows after mouse right clicking. I have some QActions there and I want to call the proper action for the the item that menu was showed.
I hope I explain it clearly.
This is piece of my code to show context menu:
void MyClass::on_listWidget_customContextMenuRequested(const QPoint& pos)
QListWidgetItem* widget = ui->listWidget->itemAt(pos);
if(widget != 0)
int row = ui->listWidget->row(widget);
QString text = widget->text();
contextMenu_ = new QMenu(ui->listWidget);
if(pos != QPoint(0,0))
pointGlobal = mapToGlobal(pos);
QAction* menuItem1 = new QAction("action 1", 0); connect(menuItem1, SIGNAL(triggered()), this, SLOT(getContextMenuAction contextMenu_ -> addAction(menuItem1); QAction* menuItem2 = new QAction("action 2", 0); connect(menuItem2, SIGNAL(triggered()), this, SLOT(getContextMenuAction())); contextMenu_ -> addAction(menuItem2); contextMenu_->exec(point); } }
In that way I get menu and then after clicking on action getContextMenuAction method is called. But in the same moment I loose info on which item of the list the menu was clicked (I need that info). Is there any way to get that info?