创建QMainWindow菜单栏

创建项目

步骤大抵与之前一样

选择创建Qt Widgets Application

选择项目路径以及为项目命名

在选择基类时选择QMainWindow

g

选择构建套件

创建工具栏

cpp 复制代码
//mainwindow源文件(mainwindow.cpp)
#include <QMenuBar>
#include <QMenu>
#include <QAction>

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
{
    QMenuBar* mb = new QMenuBar(this);    //创建菜单栏
    this->setMenuBar(mb);                 //添加菜单栏到窗口
    this->resize(400, 300);
    //创建菜单
    QMenu* menu_02 = new QMenu("编辑");
    QMenu* menu_01 = new QMenu("文件");      
    QMenu* menu_03 = new QMenu("工具");
    //添加菜单到菜单栏
    mb->addMenu(menu_01);
    mb->addMenu(menu_02);
    mb->addMenu(menu_03);
    //创建行为
    QAction* act_01 = new QAction("新建");
    QAction* act_02 = new QAction("保存");
    //添加行为到菜单
    menu_01->addAction(act_01);
    menu_01->addAction(act_02);
}

实现效果:

添加功能

背景知识:当点击界面中的Action时会触发出一个信号函数,将此信号与想要实现的槽函数连接即可

cpp 复制代码
//code
connect(act_01, &QAction::triggered, this, &QMainWindow::close);
相关推荐
无风听海几秒前
C# 中对象相等性判断的全面解析
开发语言·c#
寻星探路几秒前
【Python 全栈测开之路】Python 基础语法精讲(三):函数、容器类型与文件处理
java·开发语言·c++·人工智能·python·ai·c#
txinyu的博客1 分钟前
函数的可重入性决定了函数的线程安全?volatile被认为是可重入关键字?
c++
逑之2 分钟前
C语言笔记8:操作符
c语言·开发语言·笔记
无限进步_2 分钟前
【C语言&数据结构】相同的树:深入理解二叉树的结构与值比较
c语言·开发语言·数据结构·c++·算法·github·visual studio
枫叶丹47 分钟前
【Qt开发】Qt系统(五)-> Qt 多线程
c语言·开发语言·c++·qt
Larry_Yanan12 分钟前
Qt多进程(九)命名管道FIFO
开发语言·c++·qt·学习·ui
聆风吟º13 分钟前
【C++藏宝阁】C++入门:命名空间(namespace)详解
开发语言·c++·namespace·命名空间
优雅的潮叭15 分钟前
c++ 学习笔记之 模板元编程
c++·笔记·学习
潇潇云起16 分钟前
mapdb
java·开发语言·数据结构·db