1.首先用QT设计师实现一个继承于QWidget的UI,然后我们拖一个treeWidget控件到主窗体中,注意treeWidget还有一个属性要设置,contextMenuPolicy属性要设置为:CustomContextMenu。 2.然后编写一个槽函数,设为slotShowTreeMenu()void SeekerMainWindow::slotShowTreeMenu() { QMenu *treeMenu=new QMenu(ui->treeWidget); QAction *delAction = new QAction(QStringLiteral("移除"), this); QAction *modAction = new QAction(QStringLiteral("重命名"), this); QAction *outputAction = new QAction(QStringLiteral("生成户型图"), this); treeMenu->addAction(delAction); treeMenu->addAction(modAction); treeMenu->addAction(outputAction); treeMenu->exec(QCursor::pos()); }
3.在添加信号槽连接connect(ui->treeWidget, SIGNAL(customContextMenuRequested(QPoint)),this, SLOT(slotShowTreeMenu()));
这样就可以简单实现右击菜单了。
使用QT实现右击菜单实例
最新推荐文章于 2024-12-25 11:35:55 发布