Qt 分割視窗Splitter類
阿新 • • 發佈:2019-02-15
//main.cpp
#include "mymainwindow.h" #include <QApplication> #include <QSplitter> #include <QTextEdit> //#include <QTextCodec> int main(int argc, char *argv[]) { QApplication a(argc, argv); // MyMainWindow w; // w.show(); QFont font("ZYSong18030",12); a.setFont(font); //指定顯示字型 //主分割視窗 //新建一個QSplitter類物件,作為主分割視窗,設定此分割視窗為水平分割視窗 QSplitter *splitterMain=new QSplitter(Qt::Horizontal,0); QTextEdit *textLeft=new QTextEdit(QObject::tr("Left Widget"),splitterMain); textLeft->setAlignment(Qt::AlignCenter); //設定textEdit對齊方式 //右分割視窗 QSplitter *splitterRight=new QSplitter(Qt::Vertical,splitterMain); //setOpaqueResize方法用於設定分割視窗的分隔條在拖拽時是否實時更新顯示 splitterRight->setOpaqueResize(false); QTextEdit *textUp=new QTextEdit(QObject::tr("Top Widget"),splitterRight); textUp->setAlignment(Qt::AlignCenter); QTextEdit *textBottom=new QTextEdit(QObject::tr("Bottom Widget"),splitterRight); textBottom->setAlignment(Qt::AlignCenter); //setStretchFacto()方法用於設定伸縮控制元件, //第一個引數用於指定設定的控制元件序列號,序列號按照插入的先後次序從0開始編號 //第二個引數為大於0的值,表示此控制元件為課伸縮控制元件 splitterMain->setStretchFactor(1,1);//設定右部分為可伸縮控制元件 splitterMain->setWindowTitle(QObject::tr("Splitter視窗")); splitterMain->show(); return a.exec(); }