首先新建项目,去掉创建界面的选项,开始自己编写。
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控件哦。假设此时你再添加按钮什么的,你会发现白色区域的空间会变小。所以要全面看待分割,他是把一个窗口给分割了。
来源:oschina
链接:https://my.oschina.net/u/2505464/blog/542353