QMenu

QMenu

创建

QMenu menu1;

//添加动作

//添加动作

QAction* act1=menu1.addAction(codec->toUnicode("动作1"));
QAction* act2=menu1.addAction(codec->toUnicode("动作2"));

QAction连接槽函数

 //QAction连接槽函数connect(act1, &QAction::triggered, this, [=]()
{QMessageBox::information(
this, "tip", u8"动作1事件");});connect(act2, &QAction::triggered, this, &QtWidgetsApplication2::MenuAction2);public slots: //事件2的槽函数定义
void MenuAction2(); /// <summary> /// 事件2的槽函数 /// </summary> void QtWidgetsApplication2::MenuAction2() {QMessageBox::information(this, "tip", u8"动作2事件"); };

 

 

//在指定位置显示菜单作为弹出菜单,并返回用户选择的动作的指针

    //在指定位置显示菜单作为弹出菜单,并返回用户选择的动作的指针QAction* selectAction= menu1.exec(QCursor::pos());if (selectAction)//有选择菜单的选项
    {QString selectText = selectAction->text();QMessageBox::information(this, "tip", selectText);}else//没有选择菜单
    {QMessageBox::information(this, "tip", u8"没选择");}