创建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嘎嘎嵌入式开发2 小时前
(2)100天python从入门到拿捏
开发语言·python
Stanford_11063 小时前
如何利用Python进行数据分析与可视化的具体操作指南
开发语言·c++·python·微信小程序·微信公众平台·twitter·微信开放平台
Vallelonga3 小时前
Rust 中的数组和数组切片引用
开发语言·rust
Kiri霧3 小时前
Rust模式匹配详解
开发语言·windows·rust
white-persist4 小时前
Python实例方法与Python类的构造方法全解析
开发语言·前端·python·原型模式
千里马-horse4 小时前
Async++ 源码分析8--partitioner.h
开发语言·c++·async++·partitioner
Lucis__5 小时前
再探类&对象——C++入门进阶
开发语言·c++
007php0075 小时前
某大厂跳动面试:计算机网络相关问题解析与总结
java·开发语言·学习·计算机网络·mysql·面试·职场和发展
lsx2024066 小时前
HTML 字符集
开发语言
很㗊6 小时前
C与C++---类型转换
c语言·开发语言