核心控件和浮动窗口

 核心控件和浮动窗口
核心控件和浮动窗口
核心控件和浮动窗口
#include "mainwindow.h"
#include<QMenuBar>//菜单栏
#include<QMenu>//菜单
#include<QAction>//菜单项
#include<QDebug>//打印
#include<QToolBar>//工具栏
#include<QPushButton>//按钮
#include<QStatusBar>//状态栏
#include<QLabel>//标签
#include<QTextEdit>
#include<QDockWidget>

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
{
    //菜单栏 1
    QMenuBar *mBar = menuBar();

    //添加菜单 2
    QMenu *pFile = mBar->addMenu("文件");

    //添加菜单项,添加动作 3
    QAction  *pNew = pFile->addAction("新建");//在文件下面再加一个“新建”按钮

    connect(pNew,&QAction::triggered,
            [=]()
            {
             qDebug() << "新建被按下";
            }


            );
    pFile->addSeparator();//添加分割线 1
    QAction  *pOpen = pFile->addAction("打开");

    //工具栏,菜单项的快捷方式 1
    QToolBar *toolBar = addToolBar("toolBar");

    //工具栏添加快捷键 2
    toolBar->addAction(pNew);

    QPushButton *b = new QPushButton(this);
    b->setText("^_^");
    //添加小控件
    toolBar->addWidget(b);

    connect(b,&QPushButton::clicked,
            [=]()
            {
             b->setText("123");
            }


            );
    //状态栏 1
    QStatusBar *sBar = statusBar();

    QLabel  *label = new QLabel(this);
    label->setText("Normal text file");
    sBar->addWidget(label);
   //addWidget 从左往右添加 2
    sBar->addWidget(new QLabel("2",this));//这种方法添加状态栏比较快

    //addPermanentWidget 从右往左添加
    sBar->addPermanentWidget(new QLabel("3",this));

    //核心控件,可以在空白区域写东西了
    QTextEdit *textEdit = new QTextEdit(this);
    setCentralWidget(textEdit);//添加核心文本编辑器


    //浮动窗口
    QDockWidget *dock = new QDockWidget(this);
    addDockWidget(Qt::RightDockWidgetArea,dock);//第一个参数是放的位置,在addDockWidget上F1,点击第一个形参看找到位置代码

    QTextEdit *textEdit1 = new QTextEdit(this);//在浮动窗口上添加文本编辑器(控件)
    dock->setWidget(textEdit1);
}

MainWindow::~MainWindow()
{

}