如何初始化分割器的手柄位置?

13
我想将分割器的位置初始化为以下位置,而不是在中间。我无法在属性中设置它。

enter image description here

怎么解决这个问题?
4个回答

17

您可以使用QSplitter::setSizes以这种方式重新定位分隔器的句柄:

ui->splitter->setSizes(QList<int>() << 100 << 200);

16

您应该为分裂器中的两个小部件设置水平拉伸。例如,通过将左侧小部件的水平拉伸设置为1,右侧小部件的水平拉伸设置为2,则右侧小部件的宽度将是左侧小部件的2倍:

leftWidget->sizePolicy().setHorizontalStretch(1);
rightWidget->sizePolicy().setHorizontalStretch(2); 

另一种可能的方法是使用 QSplitter::setSizes


你也可以在设计师中完成这个操作,为每个包含的小部件设置水平拉伸属性。 - undefined

6

使用QSplitter::setStretchFactor(int index, int stretch),其中index为相应小部件的位置。


0

我之前也遇到了同样的问题,但你会发现有一个预定义的属性存在,名为

`self.horizontalLayout_6.setSpacing(0)` 

你还会找到一个

  self.verticalLayout_6.setSpacing(0)

你可以根据自己的喜好调整间距,这对我很有效。

根据目前的写法,你的回答不够清晰。请编辑以添加更多细节,帮助其他人理解这如何回答所提出的问题。你可以在帮助中心找到关于如何撰写好回答的更多信息。 - Community

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接