QT5 分割窗口
分割窗口
#include<QSplitter>
实例化一个主分割窗口,然后在加上其他分割窗口在上面
- QSplitter *splitterMain =new QSplitter(Qt::Horizontal,0);//水平分割方式
实例化小分割窗口加在主分割窗口上面
- QSplitter *splitterRight=new QSplitter(Qt::verticcal,splitterMain);//右边小分割窗口
把QLabel,QTextEdit等文本编辑加到分割窗口上面
- new TextEdit *text=new QTextEdit(QObject::tr(“输入内容”),splitterMain);
文本文字的文字对齐方式
- text->setAlignment(Qt::AlignCenter)//文字居中对齐
Qt::AlignLeft | 左对齐 |
---|---|
Qt::AlignRight | 右对齐 |
Qt::AlignUp | 文字与顶端对齐 |
Qt::AlignBottom | 文字底部对齐 |
Qt::AlignCenter | 居中对齐 |
- splitterMain->setStretchFactor(1,1):
用于设定可伸缩控件,第一个参数用于指定控件的序号,控件序号按插入的先后从0依次开始编号;
// main.cpp
QApplication a(argc, argv);
QFont font("ZYsong18030",12);
a.setFont(font);
//分割主窗口
QSplitter *splitterMain=new QSplitter(Qt::Horizontal,nullptr);//水平分割方式
QTextEdit *textLeft=new QTextEdit(QObject::tr("左边分割窗口"),splitterMain);
textLeft->setAlignment(Qt::AlignCenter);//字体居中
//右边分割窗口
QSplitter *splitterRight=new QSplitter(Qt::Vertical,splitterMain);//垂直分割方式
splitterRight->setOpaqueResize(false);
QTextEdit *textUp=new QTextEdit (QObject::tr("上分割窗口"),splitterRight);
textUp->setAlignment(Qt::AlignHCenter);
QTextEdit *textButtom=new QTextEdit(QObject::tr("底部分割窗口"),splitterRight);
textButtom->setAlignment(Qt::AlignCenter);
splitterMain->setStretchFactor(0,1);//用于设定可伸缩控件,第一个参数用于指定控件的序号,控件序号按插入的先后从0依次开始编号;
splitterMain->setWindowTitle("splitter");
splitterMain->show();
return a.exec();