其他分享
首页 > 其他分享> > 在QT中为widget添加鼠标右键弹出菜单

在QT中为widget添加鼠标右键弹出菜单

作者:互联网

QT新学,参考网上资源,学会了一种为特定Widget添加右键弹出菜单的一种方法:

目标:为ui中的一个widge(变量名:tui.m_VtkWidget)添加右键弹出菜单,通过分隔条为多个菜单项进行分组,示例如下

在主窗口的构造函数中添加如下代码:
    QAction* newMenu = new QAction("新建", ui.m_VtkWidget);//新建一个菜单项
    QAction* deleteMenu = new QAction("删除", ui.m_VtkWidget);//新建一个菜单项

    ui.m_VtkWidget->addAction(newMenu);//添加动作

    QAction* Separator = new QAction(ui.m_VtkWidget);//新建一个QAction,用于处理分隔条
    Separator->setSeparator(true);//设置为分隔条
    ui.m_VtkWidget->addAction(Separator);//增加分隔条


    ui.m_VtkWidget->addAction(deleteMenu);//添加动作

    connect(newMenu, SIGNAL(triggered(bool)), this, SLOT(on_action_NewMenu_triggered()));//绑定菜单函数
    connect(deleteMenu, SIGNAL(triggered(bool)), this, SLOT(on_action_DeleteMenu_triggered()));//绑定菜单函数

    ui.m_VtkWidget->setContextMenuPolicy(Qt::ActionsContextMenu);//将动作作为弹出菜单

标签:widget,菜单,triggered,QAction,VtkWidget,添加,ui,右键,中为
来源: https://blog.csdn.net/wxixi/article/details/111999128