Qt的listWidget如何添加右键菜单
如题我怎么在listwidget的item上面点击鼠标右键就会出现我自定义的菜单,在别的地方点击不出现菜单?求大神指点,不要回答自己百度,因为我试过了,没成功,谢谢。...
如题 我怎么在listwidget的item上面点击鼠标右键就会出现我自定义的菜单,在别的地方点击不出现菜单?求大神指点,不要回答自己百度,因为我试过了,没成功,谢谢。
展开
2015-10-27
展开全部
不解释,自己看。
// myWidget is any QWidget-derived class
myWidget->setContextMenuPolicy(Qt::CustomContextMenu);
connect(myWidget, SIGNAL(customContextMenuRequested(const QPoint&)), this, SLOT(ShowContextMenu(const QPoint&)));
void MyClass::ShowContextMenu(const QPoint& pos) // this is a slot
{
// for most widgets
QPoint globalPos = myWidget->mapToGlobal(pos);
// for QAbstractScrollArea and derived classes you would use:
// QPoint globalPos = myWidget->viewport()->mapToGlobal(pos);
QMenu myMenu;
myMenu.addAction("Menu Item 1");
// ...
QAction* selectedItem = myMenu.exec(globalPos);
if (selectedItem)
{
// something was chosen, do stuff
}
else
{
// nothing was chosen
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询