Qt给QMainWindow窗口添加菜单栏菜单和快捷键

添加QMainWindow自带的标准菜单栏和菜单

  • 常用标准菜单代码:
    //添加菜单栏
    QMenuBar *menuBar;
    menuBar = new QMenuBar(this);
    this->setMenuBar(menuBar);

    //给菜单栏添加标准文件菜单
    QMenu *menuFile;
    menuFile = new QMenu(menuBar);
    menuBar->addAction(menuFile->menuAction());
    //设置文本和快捷键, 通常导航栏中&F指Alt+F, 菜单中&O指Ctrl+O
    menuFile->setTitle(tr("File(&F)"));

    //给文件菜单添加子菜单
    QAction *actionOpen;
    actionOpen = new QAction(this);
    actionOpen->setStatusTip(tr("Open an existing file"));      //设置状态栏提示, 鼠标悬浮时状态栏会提示对应信息
    connect(actionOpen, &QAction::triggered, this, &MainWindow::open);      //关联槽函数

    QAction *actionSave;
    actionSave = new QAction(this);
    menuFile->addAction(actionOpen);
    menuFile->addSeparator();//给菜单加分隔条
    menuFile->addAction(actionSave);

    //给Open和Save菜单设置文本和快捷键
    actionOpen->setText(tr("Open(&O)"));
    actionSave->setText(tr("Save(&S)"));
  • 效果如图

  • 一些常用的菜单, 可以引用Qt中的标准菜单, 代码如下:

openAction = new QAction(tr("&Open"), this);
//设置快捷键为Qt标准快捷键: Qt标准快捷键可查Qt助手QKeySequence, Qt标准快捷键具有跨平台的特点.
openAction->setShortcut(QKeySequence::Open);
posted @ 2020-09-25 09:44  技术不支持  阅读(2600)  评论(0编辑  收藏  举报