菜单栏和工具栏

在此处进行代码演示(相关理论在代码处有注释):
MainWindow.cpp

#include "mainwindow.h"
#include<QMenuBar>
#include<QToolBar>
#include<QPushButton>
MainWindow::MainWindow(QWidget *parent): QMainWindow(parent)
{resize(600,400);//创建菜单栏//菜单栏只有一个QMenuBar *bar=menuBar();//将菜单栏放入窗口中setMenuBar(bar);//创建菜单,等号左半部分不要也行,就是它会产生返回值QMenu *fileMenu= bar->addMenu("文件");QMenu *file= bar->addMenu("编辑");//创建菜单项,等号左半部分可以不要,为了下面工具栏的演示才加上的QAction * newAction=fileMenu->addAction("新建");fileMenu->addAction("编辑啥啊");//添加分隔线fileMenu->addSeparator();//工具栏;工具栏可以有多个QToolBar *toolbar=new QToolBar(this);addToolBar(Qt::LeftToolBarArea,toolbar);//后期设置,只允许左右停靠toolbar->setAllowedAreas(Qt::LeftToolBarArea|Qt::RightToolBarArea);//设置浮动toolbar->setFloatable(false);//设置移动(总开关,如果不能移动的话,那浮动也会失效)toolbar->setMovable(false);//工具栏中设置内容//工具栏处的新建和菜单项中的新建功能是是共用的toolbar->addAction(newAction);//添加分割线toolbar->addSeparator();//工具栏中添加一些控件QPushButton *btn=new QPushButton("A",this);toolbar->addWidget(btn);
}MainWindow::~MainWindow()
{}

注:
在心间项目的时候要选择一个空文件夹,然后再选择父类的时候选择MainWindow那个,不然使用menubar会报错。

状态栏

在此处进行代码演示(相关理论在代码处有注释):
MainWindow.cpp

#include "mainwindow.h"
#include<QMenuBar>
#include<QToolBar>
#include<QPushButton>
#include<QLabel>
#include<QStatusBar>
#include<QDockWidget>
#include<QTextEdit>MainWindow::MainWindow(QWidget *parent): QMainWindow(parent)
{resize(600,400);//创建菜单栏//菜单栏只有一个QMenuBar *bar=menuBar();//将菜单栏放入窗口中setMenuBar(bar);//创建菜单,等号左半部分不要也行,就是它会产生返回值QMenu *fileMenu= bar->addMenu("文件");QMenu *file= bar->addMenu("编辑");//创建菜单项,等号左半部分可以不要,为了下面工具栏的演示才加上的QAction * newAction=fileMenu->addAction("新建");fileMenu->addAction("编辑啥啊");//添加分隔线fileMenu->addSeparator();//工具栏;工具栏可以有多个QToolBar *toolbar=new QToolBar(this);addToolBar(Qt::LeftToolBarArea,toolbar);//后期设置,只允许左右停靠toolbar->setAllowedAreas(Qt::LeftToolBarArea|Qt::RightToolBarArea);//设置浮动toolbar->setFloatable(false);//设置移动(总开关,如果不能移动的话,那浮动也会失效)toolbar->setMovable(false);//工具栏中设置内容//工具栏处的新建和菜单项中的新建功能是是共用的toolbar->addAction(newAction);//添加分割线toolbar->addSeparator();//工具栏中添加一些控件QPushButton *btn=new QPushButton("A",this);toolbar->addWidget(btn);//状态栏,最多只能有一个QStatusBar *stbar=statusBar();//设置到窗口中setStatusBar(stbar);//在状态栏放标签控件QLabel *label=new QLabel("提示信息",this);stbar->addWidget(label);//提示信息放到右侧QLabel *label2=new QLabel("右侧提示信息",this);stbar->addPermanentWidget(label2);//铆接部件(浮动窗口),可以有多个QDockWidget *dockWidget=new QDockWidget("浮动",this);addDockWidget(Qt::BottomDockWidgetArea,dockWidget);//设置后期停靠区域,只允许上下dockWidget->setAllowedAreas(Qt::TopDockWidgetArea|Qt::BottomDockWidgetArea);//设置中心部件,只能一个QTextEdit *edit=new QTextEdit(this);setCentralWidget(edit);
}MainWindow::~MainWindow()
{}

资源文件的添加

重新创建一个新项目,在创建新项目的过程中不要出去ui的选项,选中按各选项,之后双击下图选中的选项,然后就可以在“设计“界面进行设计。

之后可以在其中进行拖拽和添加等操作,不用自己再手写代码了。
添加图片
1.可以选择再设计窗口进行添加
2.再代码中进行添加,此处与视频中讲述有出入,可能因版本不同具体的代码实现有一点出入。
视频中使用actionNew,本文具体实现的时候使用了actionef,使用视频中的会报错,下文代码可以正确运行。
详细代码:

#include "mainwindow.h"
#include "ui_mainwindow.h"MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow)
{ui->setupUi(this);//添加图标,//ui->actionNew->setIcon(QIcon("D:/Imag/1.jpg"));ui->actionef->setIcon(QIcon("D:/Imag/1.jpg"));
}MainWindow::~MainWindow()
{delete ui;
}

添加资源

右击选择再Explore,之后把图片文件复制粘贴进去。

右击选中文件选择添加新文件(add new)

按照下图所示选择

自己命名




如果不是上图这样子的就跟我的一样的话,就点击第一个

下一步添加文件


打开全选


然后资源添加成功
使用方法:

#include "mainwindow.h"
#include "ui_mainwindow.h"MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow)
{ui->setupUi(this);//添加图标,//ui->actionNew->setIcon(QIcon("D:/Imag/1.jpg"));ui->actionef->setIcon(QIcon("D:/Imag/1.jpg"));//私用添加qt资源:":+前缀名+文件名"ui->actionef->setIcon(QIcon(":/new/prefix1/Imag/2.jpg"));
}MainWindow::~MainWindow()
{delete ui;
}

QT_7(菜单栏、工具栏、状态栏、资源文件的添加)相关推荐

  1. qt中添加资源文件以及添加菜单图标、工具栏中菜单的快捷方式、窗口以及对话框的icon

    1.file--new-QT resource file,就会在工程中添加一个资源文件,然后单击Add下拉框,选择Add prefix,可以将生成的/new/prefix的后缀改为其他的名字,如fil ...

  2. Qt菜单栏-工具栏-状态栏

    1.创建动作 QAction是Qt中用于添加动作的类,可以将它添加在菜单,作为一个菜单项,也可以添加到工具栏,作为一个工具栏按钮. 其中参数一是设置该操作按钮的图标,":/images/ic ...

  3. Qt解决资源文件中添加图片,对应控件不显示图片的问题

    //资源文件--为控件添加图标//:/new/prefix1/image/mr.jpgQPixmap pic; //定义一个图片对象pic.load(":/new/prefix1/a.jpg ...

  4. QT关于资源文件的添加使用

    Qt 资源系统是一个跨平台的资源机制,用于将程序运行时所需要的资源以二进制的形式存储于可执行文件内部.如果你的程序需要加载特定的资源(图标.文本翻译等),那么,将其放置在资源文件中,就再也不需要担心这 ...

  5. android gradle resvalue,在插件中Gradle使用resValue在资源文件中添加信息,导致realease版本编译失败...

    问题详细描述 Detailed description of the problem 由于在插件中无法读取自身的meta-data,因此在资源文件中做一些分渠道分发的内容填充.但是使用resValue ...

  6. QT添加菜单栏-工具栏-中心区域-状态栏-dock 示范

    QT添加菜单栏-工具栏-中心区域-状态栏-dock 示范 QT添加菜单栏-工具栏-中心区域-状态栏-dock示范.rar-QT文档类资源-CSDN下载QT添加菜单栏-工具栏-中心区域-状态栏-dock ...

  7. 【Qt入门第4篇】 基础(四)添加菜单图标——使用Qt资源文件

    导语 后面几篇里我们将介绍常用的Qt主窗口部件QMainWindow,主窗口部件就是一般的应用程序主窗口,它包含了菜单栏.工具栏.中心部件.状态栏和可停靠部件等.这一篇将着重介绍菜单的实现以及使用资源 ...

  8. Win32窗体应用程序如何添加资源文件?

    Win32窗体应用程序如何添加资源文件? 上一篇文章介绍了:如何创建一个最简单的Windows窗体应用程序. 按照上一篇文章的介绍,我们的HelloApp项目对应如下的窗体应用程序: 这一篇文章中,我 ...

  9. qt添加资源文件后编译失败,提示Qt:Error:No rule to make target ’ … /…/??.png’,needed by ‘debug/qrc_qrc.cpp’ stop

    提要 项目本来编译没有问题,资源文件忘记添加了,于是添加资源文件后,编译没有通过,提示错误:Qt:Error:No rule to make target ' - /-/??.png',needed ...

最新文章

  1. 景区ota常遇问题_景区票务管理系统能给景区带来销售业绩,你知道这些功能ma?...
  2. 交叉驰豫的影响因素_什么因素影响了软管总成的质量?
  3. 【Python】pandas 缺失数据处理大全(附代码)
  4. Codeup-问题 C: 货币系统
  5. 区块链:定义未来金融与经济新格局
  6. mysql 5.6密钥_MySQL的密钥文件不正确
  7. 湖南(包括岳阳)的交通规划
  8. Quantumas,作者太NB了,俺发现俺菜得跟猪一样!!!
  9. oracle sql优化指导,基于Oracle的sql优化(1)
  10. 制表符空格数设置(阿里巴巴使用4个空格)
  11. flask 模板 php,Flask 模板系统
  12. Ubuntu LVM扩展LV
  13. 10个最好的免费响应式Joomla模板
  14. 阿里云云原生一体化数仓入选 2022数博会“十佳大数据案例”
  15. crontrigger java_java CronTrigger用法
  16. GIF图片批量改JPG格式
  17. 电路交换、报文交换和分组交换的区别
  18. linux cab文件怎么安装包,IE控件cab包手动安装
  19. 泛微oa流程表单之取值弹窗
  20. systools ssd data recovery怎么用呢

热门文章

  1. [20150612]使用bvi查看数据块.txt
  2. 【Tableau自学笔记】第一篇——各类食物的GI值与热量值可视化图表
  3. Jetpack——LiveData与ViewBinding
  4. 复杂度 O、Θ、Ω、o、ω,别再傻傻分不清了!
  5. 最小树形图-朱刘算法详解 +例题解析
  6. VMware vSphere VDP 安装部署
  7. toLocaleString知多少
  8. 移动硬盘/U盘 无法弹出,提示“设备被占用”, 一般解决方法 以及 MsMpEng.exe占用解决方法
  9. 荔枝派进入u-boot
  10. oracle 查看表字段属性_Oracle 查询表字段属性的方法