自学QT之实现窗口分割QSplitter的使用

首先新建项目,去掉建立界面的选项,开始本身编写。code

main.cpp文件的源码以下:对象

#include "mainwindow.h"
#include <QApplication>
#include <QSplitter>
#include <QFont>
#include <QTextEdit>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QFont font("ZYSong18030",12);
    a.setFont(font);
    QSplitter *splitterMain =new QSplitter(Qt::Horizontal,0);//新建一个分割类对象做为分割窗口,设置分割方式为水平
    QTextEdit *textLeft=new QTextEdit(QObject::tr("left widget"),splitterMain);
    textLeft->setAlignment(Qt::AlignCenter);
    QSplitter *splitterRight =new QSplitter(Qt::Vertical,splitterMain);//右分割窗口,分割方式为垂直
    splitterRight->setOpaqueResize(false);//设置实时更新是否可用
    QTextEdit *textUp=new QTextEdit(QObject::tr("right widget"),splitterRight);
    textUp->setAlignment(Qt::AlignCenter);
    QTextEdit *textBottom =new QTextEdit(QObject::tr("bottom widget"),splitterRight);
    textBottom->setAlignment(Qt::AlignCenter);
    splitterMain->setStretchFactor(1,2);//设置控件序号和可伸缩性
    splitterMain->setWindowTitle(QObject::tr("splitter"));
    splitterMain->show();



    return a.exec();
}

运行后的结果如图:

特别说明:在运行效果中看到的窗口并非说被这么分割,白色的部分是一个edit控件哦。假设此时你再添加按钮什么的,你会发现白色区域的空间会变小。因此要全面看待分割,他是把一个窗口给分割了。get

相关文章
相关标签/搜索