自學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

相關文章
相關標籤/搜索