Qt QMenu简介

2023-05-16

1.常用方法

//添加带图标,文字的菜单项
QAction *addAction(const QIcon &icon, const QString &text)

//添加带快捷键,带菜单项接收槽
QAction *addAction(const QString &text, const QObject *receiver, const char *member, const QKeySequence &shortcut = 0)

//添加分隔符
QAction *addSeparator()


2.示例

一个qtcreator的菜单栏,这里就做了一个文件菜单栏,加上二级菜单。

源码:

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QMenu>
#include <QKeySequence>
#include <QDebug>


MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    QMenu *menu = this->menuBar()->addMenu("文件(F)");

    //添加带快捷键,绑定槽函数
    QAction *actionNew = menu->addAction("新建文件或项目(N)...",this,slotNew, QKeySequence(tr("Ctrl+N")));
    QAction *actionOpen = menu->addAction("打开文件或项目(N)...",this,slotOpen, QKeySequence(tr("Ctrl+O")));
    QAction *actionOpenFile = menu->addAction("打开文件,用...(W)",this,slotOpenFile);
    QAction *latelyFile = menu->addAction("最近访问的文件(F)",this,slotLatelyFile);
    QAction *latelyProj = menu->addAction("最近使用的项目(R)",this,slotLatelyProj);
    QAction *sessions = menu->addAction("Sessions",this,slotSession);

    //添加二级菜单
    QMenu *sonMenu = new QMenu(this);
    sonMenu->addAction("1|E:\qtDemo\project");
    sonMenu->addAction("2|E:\qtDemo\project");
    sonMenu->addAction("3|E:\qtDemo\project");
    sonMenu->addAction("4|E:\qtDemo\project");
    latelyFile->setMenu(sonMenu);

    menu->addSeparator();
    menu->addAction("关闭所有项目和编辑器");
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::slotNew()
{
    qDebug()<<"Ctrl+N";
}

void MainWindow::slotOpen()
{
    qDebug()<<"Ctrl+N";
}

void MainWindow::slotOpenFile()
{
    qDebug()<<"Open file";
}

void MainWindow::slotLatelyFile()
{
    qDebug()<<"slotLatelyFile";
}

void MainWindow::slotLatelyProj()
{
    qDebug()<<"slotLatelyProj";
}

void MainWindow::slotSession()
{
    qDebug()<<"slotSession";
}

3.运行效果

这里没有加图标,大体基本相似。

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Qt QMenu简介 的相关文章

  • Windows系统远程桌面登录Ubuntu21.04

    Windows系统远程桌面登录Ubuntu21 04 1 概述2 在Ubuntu操作系统上2 1 安装必要软件2 2 确保Ubuntu的远程桌面共享打开2 3 使用dconf editor来取消某些权限限制 3 在Windows10系统上3
  • 在IIS上配置php服务器

    1 下载php解释器 地址为http windows php net download 版本有两种 xff0c 线程安全和非线程安全 xff0c 线程安全是给apache用的 xff0c 非线程安全是给iis用的 xff0c 我们要配的是i
  • 高级(二)CDN之二

    强调 xff1a 如果想弄懂acl的配置语言 xff0c 可以看一些perl相关的书籍 接上 一 虚拟主机 掌握 xff1a 虚拟主机的概念 虚拟主机的作用 虚拟主机的配置 虚拟 主机 xff1a 并非指不存在 xff0c 而是指空间 是由
  • vscode安装c/c++编译器

    编译器下载 打开网址https sourceforge net projects mingw w64 files 下载x86 64 posix seh或其他的编译器 待下载完成后将其解压到D vscodeCompile文件夹下 将D vsc
  • Python中的shape[0]、shape[1]和shape[-1]分别是什么意思(附代码)

    shape函数是Numpy中的函数 xff0c 它的功能是读取矩阵的长度 xff0c 比如shape 0 就是读取矩阵第一维度的长度 直接用 shape可以快速读取矩阵的形状 xff0c 使用shape 0 读取矩阵第一维度的长度 shap

随机推荐