QStatusBar,QLabel,QTextEdit,QDockWidget组装界面
1、创建一个状态栏( 只能有一个) setStatusBar
//创建状态栏 QStatusBar *stBar = statusBar(); setStatusBar(stBar);
示例:
2、给状态栏新增标签,左标签和右侧标签 addWidget
//状态栏添加一个标签 QLabel *lab1 = new QLabel("标签1"); stBar->addWidget(lab1); //右侧添加一个标签 QLabel *lab12 = new QLabel("标签2"); stBar->addPermanentWidget(lab12);
示例:
3、增加一个主空间到窗口中:setCentralWidget
//创建一个主控件,中间控件 QTextEdit *edit = new QTextEdit(this); setCentralWidget(edit);
示例:
4、创建浮动控件:QDockWidget,设置浮动控件可以浮动位置
//创建一个浮动空间 可以多个 QDockWidget * dockWidge = new QDockWidget("浮动",this); addDockWidget(Qt::BottomDockWidgetArea,dockWidge); //设置可以浮动位置 dockWidge->setAllowedAreas(Qt::BottomDockWidgetArea | Qt::TopDockWidgetArea);
示例:
完整代码实例:
#include "mainwindow.h" #include "QMenuBar" #include "QToolBar" #include "QPushButton" #include "QStatusBar" #include "QLabel" #include "QTextEdit".h" #include "QDockWidget" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) { //重置大小 this->resize(800,600); //创建菜单栏 QMenuBar *bar = menuBar(); //设置到页面中 this->setMenuBar(bar); QMenu *fileMenu = bar->addMenu("文件"); QMenu *editMenu = bar->addMenu("编辑"); //创建菜单 QAction *open = fileMenu->addAction("打开"); //创建分隔符 fileMenu->addSeparator(); QAction *exit = fileMenu->addAction("退出"); // 工具栏 QToolBar *toolbar = new QToolBar(this); addToolBar(toolbar); //添加按钮 关联菜单栏 toolbar->addAction(open); //文字添加 toolbar->addAction("打开"); //添加按钮 QPushButton *btn = new QPushButton("测试",this); toolbar->addWidget(btn); //放在左侧 addToolBar(Qt::TopToolBarArea,toolbar); // // 禁用移动 // toolbar->setMovable(false); //设置浮动 toolbar->setFloatable(false); //创建状态栏 QStatusBar *stBar = statusBar(); setStatusBar(stBar); //状态栏添加一个标签 QLabel *lab1 = new QLabel("标签1"); stBar->addWidget(lab1); //右侧添加一个标签 QLabel *lab12 = new QLabel("标签2"); stBar->addPermanentWidget(lab12); //创建一个主空间,中间空间 QTextEdit *edit = new QTextEdit(this); setCentralWidget(edit); //创建一个浮动空间 可以多个 QDockWidget * dockWidge = new QDockWidget("浮动",this); addDockWidget(Qt::BottomDockWidgetArea,dockWidge); //设置可以浮动位置 dockWidge->setAllowedAreas(Qt::BottomDockWidgetArea | Qt::TopDockWidgetArea); } MainWindow::~MainWindow() { }