欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

QSplitter 分割窗口

程序员文章站 2022-05-28 11:52:53
...

1.页面布局
如图,在splitter_widget中添加两个部件treeview和widget,让treeview和widget大小随鼠标拖动而变化。QSplitter 分割窗口
2,代码实现
导入头文件

#include <QSplitter>
    QSplitter *mysplitter = new QSplitter(Qt::Horizontal,ui->splitter_widget);//水平布局
    mysplitter->setStyleSheet("QSplitter::handle { background-color: rgb(179, 179, 179); }");//分割线的颜色
    mysplitter->setHandleWidth(5);//分割线的宽度
    mysplitter->setChildrenCollapsible(false);//设置部件最小宽度不能为0,最小值被限定为sizeHint或maxSize/minSize
    mysplitter->addWidget(ui->treeView);//将部件添加的分割器中
    mysplitter->addWidget(ui->widget);
    mysplitter->setSizes(QList<int> {165,888});//设置两个部件的初始宽度(水平布局)
    ui->widget_2->layout()->replaceWidget(ui->splitter_widget,mysplitter);//替换控件,将ui->splitter_widget替换为分割器
    ui->splitter_widget->hide();

3.结果
QSplitter 分割窗口
QSplitter 分割窗口
QSplitter 分割窗口

相关标签: qt