量化交易之QT篇 - QMainWindow核心部件
    #include "MainWindow.h"
#include <QMenuBar>
#include <QDebug>
#include <QToolBar>
#include <QPushButton>
#include <QLabel>
#include <QStatusBar>
#include <QDockWidget>
#include <QTextEdit>
MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
{
    resize(600, 400);
    // 创建菜单栏;
    QMenuBar *mBar = menuBar();
    // 将菜单栏放入到窗口中;
    setMenuBar(mBar);
    // 创建菜单
    QMenu *fileMenu = mBar->addMenu("File");
    QMenu *editMenu = mBar->addMenu("Edit");
    // 创建菜单项
    QAction *newAction = fileMenu->addAction("New");
    // 添加分隔符
    fileMenu->addSeparator();
    QAction *openAction = fileMenu->addAction("Open");
    // 工具栏
    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->addAction(openAction);
    // 工具栏中添加控件
    QPushButton *pushButton = new QPushButton("login all", this);
    toolBar->addWidget(pushButton);
    // 状态栏 最多有一个
    QStatusBar *staBar = statusBar();
    // 设置到窗口中
    setStatusBar(staBar);
    // 放标签控件
    QLabel *leftLabel = new QLabel("left tip", this);
    staBar->addWidget(leftLabel);
    QLabel *rightLabel = new QLabel("right tip", this); // 右部添加
    staBar->addPermanentWidget(rightLabel);
    // 浮动窗口 可以有多个
    QDockWidget *dockWidget = new QDockWidget("float", this);
    addDockWidget(Qt::BottomDockWidgetArea, dockWidget);
    // 设置后期停靠区域 只允许上下
    dockWidget->setAllowedAreas(Qt::TopDockWidgetArea | Qt::BottomDockWidgetArea);
    // 设置中心部件
    QTextEdit *edit = new QTextEdit(this);
    setCentralWidget(edit);
}
MainWindow::~MainWindow()
{
}