目录
菜单栏
工具栏
代码
mainwindow.cpp
结果
状态栏
铆接部件
核心部件
代码
mainwindow.cpp
结果
资源文件
代码
mainwindow.cpp
结果
菜单栏
只能有一个
menuBar()返回一个QMenuBar *bar
将bar放入到窗口中setMenuBar(bar)
添加菜单addMenu("文件")
添加菜单项addAction("新建")
分割线addSeparator()
工具栏
可以多个
QToolBar
addToolBar(停靠位置,toolbar)
设置停靠、浮动、移动
工具栏也可以添加菜单项
也添加分割线
代码
mainwindow.cpp
#include "mainwindow.h"
#include <QMenuBar>
#include <QToolBar>
MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
{
    resize(600,400);
    //包含菜单栏,只能有一个
    QMenuBar *bar=menuBar();
    //将菜单栏放入到窗口中
    this->setMenuBar(bar);
    //创建文件菜单
    QMenu *fileMenu=bar->addMenu("文件");
    QMenu *editMenu=bar->addMenu("编译");
    //添加菜单项
    QAction *XinJian=fileMenu->addAction("新建");
    fileMenu->addSeparator();//添加分割线
    QAction *DaKai=fileMenu->addAction("打开");
    //工具栏可以有多个
    QToolBar *toolBar=new QToolBar(this);
    addToolBar(Qt::LeftToolBarArea,toolBar);//默认停靠范围
    //只允许左右侧停靠
    toolBar->setAllowedAreas(Qt::LeftToolBarArea|Qt::RightToolBarArea);
    //设置浮动
    toolBar->setFloatable(false);
    //设置移动(总开关)
    toolBar->setMovable(false);
    //工具栏添加菜单项
    toolBar->addAction(XinJian);
    toolBar->addSeparator();//添加分割线
    toolBar->addAction(DaKai);
}
MainWindow::~MainWindow()
{
} 
结果

状态栏
只能有一个
statusBar()返回QStatus *sBar
addStatusBar(sBar)
添加内容addWidget(QLabel)
添加右侧信息
铆接部件
可以有多个
QDockWidget
addDockWidget(停靠位置,...)
后期设置停靠
核心部件
只能有一个
setCentralWidget()
代码
mainwindow.cpp
#include "mainwindow.h"
#include <QMenuBar>
#include <QToolBar>
#include <QStatusBar>
#include <QLabel>
#include <QDockWidget>
#include <QTextEdit>
MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
{
    resize(600,400);
    //包含菜单栏,只能有一个
    QMenuBar *bar=menuBar();
    //将菜单栏放入到窗口中
    this->setMenuBar(bar);
    //创建文件菜单
    QMenu *fileMenu=bar->addMenu("文件");
    QMenu *editMenu=bar->addMenu("编译");
    //添加菜单项
    QAction *XinJian=fileMenu->addAction("新建");
    fileMenu->addSeparator();//添加分割线
    QAction *DaKai=fileMenu->addAction("打开");
    //工具栏可以有多个
    QToolBar *toolBar=new QToolBar(this);
    addToolBar(Qt::LeftToolBarArea,toolBar);//默认停靠范围
    //只允许左右侧停靠
    toolBar->setAllowedAreas(Qt::LeftToolBarArea|Qt::RightToolBarArea);
    //设置浮动
    toolBar->setFloatable(false);
    //设置移动(总开关)
    toolBar->setMovable(false);
    //工具栏添加菜单项
    toolBar->addAction(XinJian);
    toolBar->addSeparator();//添加分割线
    toolBar->addAction(DaKai);
    //状态栏,只能有一个
    QStatusBar *stBar=statusBar();
    setStatusBar(stBar);
    QLabel *label=new QLabel("提示信息",this);
    stBar->addWidget(label);//添加提示信息到左侧
    QLabel *label2=new QLabel("右侧提示信息",this);
    stBar->addPermanentWidget(label2);
    //铆接部件 浮动窗口可以有多个
    QDockWidget *dock=new QDockWidget;
    //添加铆接部件到窗口中
    addDockWidget(Qt::BottomDockWidgetArea,dock);
    //设置停靠范围
    dock->setAllowedAreas(Qt::TopDockWidgetArea|Qt::BottomDockWidgetArea);
    //核心部件,只能一个
    QTextEdit *edit=new QTextEdit;//文本编辑框
    setCentralWidget(edit);
}
MainWindow::~MainWindow()
{
} 
结果

资源文件
将使用的图片资源放入项目中
右键项目->添加新文件->Qt->QtResourceFile
起名称ZiYuan_WenJian,生成ZiYuan_WenJian.qrc文件
右键ZiYuan_WenJian.qrc->open in editor
添加前缀,添加文件
使用":+前缀名+文件名"
代码
mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    //通过ui寻找控件
    //ui->action_XinJian->setIcon(QIcon("/home/cet/Qt/JiaoCheng/4/TuPian/a1.png"));//本地路径
    //使用资源文件 ":+前缀名+文件名"
    ui->action_XinJian->setIcon(QIcon(":/TuPian/a1.png"));
    ui->action_DaKai->setIcon(QIcon(":/TuPian/a2.png"));
}
MainWindow::~MainWindow()
{
    delete ui;
} 

结果




















