假设QSplitter将界面分为水平的两个部分,默认情况下每部分各占一半的宽度。
默认:
左边的索引为0, 右边的索引为1
如果我希望初始情况下左边占整个宽度的2/5,那么右边占3/5,如下做法:
ui->
splitter->setStretchFactor(
0,
2);
ui->
splitter->setStretchFactor(
1,
3);
左边7/10,右边3/10,如下代码,就不截图了:
ui->
splitter->setStretchFactor(
0,
7);
ui->
splitter->setStretchFactor(
1,
3);
是不是很简单,第一个参数是子控件的索引,第二个参数是拉伸比例(后面的索引参照第一个),
知道这些,对于多个索引,以及垂直布局在初始化大小的时候也很容易了。
QList<int> widgetSizes; widgetSizes << 200 << 520 << 100; ui->userSplitter->setSizes(widgetSizes); ui->userSplitter->setStretchFactor(2, 1);
但是这个接口初始接触的时候让人很疑惑。