Qt創建分割窗口


1.QT中QSplitter類可以用來靈活分割窗口,從而產生可用的布局,在以后進行界面布局很有用。

2.先看代碼,這個分割窗口按順序添加子窗口:

#include "mainwindow.h"
#include <QApplication>
#include <QSplitter>//分割窗口類頭文件
#include <QTextEdit>


int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    //MainWindow w;
    //w.show();
    QFont font("ZYSong18030",12);//指定顯示字體

    a.setFont(font);//設置應用程序字體

    //主分割窗口
    QSplitter *spwin = new QSplitter(Qt::Horizontal,0);//指定水平分割
    QTextEdit * te = new QTextEdit("Left Widget",spwin);
    te->setAlignment(Qt::AlignCenter);

    //右分割窗口
    QSplitter *spright = new QSplitter(Qt::Vertical,spwin);
    spright->setOpaqueResize(false);
    QTextEdit *teup = new QTextEdit("Top Widget",spright);
    teup->setAlignment(Qt::AlignCenter);

    QTextEdit *tedown = new QTextEdit("Down Widget",spright);
    tedown->setAlignment(Qt::AlignCenter);

    spwin->setStretchFactor(1,1);

    spwin->setWindowTitle("分割窗口");

    spwin->show();


    return a.exec();
}

3.查看運行效果:可以看到窗口被划分為三部分,而且可以拖動改變三個子窗口大小

4.分析:

tedown->setAlignment(Qt::AlignCenter)設置對齊方式為居中對齊
spwin->setStretchFactor(1,1);讓spwin有部分可以伸展
spright->setOpaqueResize(false);設置分割線拖拽時是否實時顯示
QSplitter *spwin = new QSplitter(Qt::Horizontal,0);創建分割窗口,該窗口分為兩部分
 




 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM