1

当子小部件由于其他原因调整大小时,我需要更新QSplitterHandle位置,而不是移动拆分器句柄。QSplitter特别是,我在拆分器中有复合小部件,其中一个子部件被隐藏了。我尝试了以下事情:

  1. 设置QSizePolicy为小部件。
  2. 设置QSizePolicy到其他小部件QSplitter
  3. 为里面的小部件设置拉伸因子QSplitter
4

1 回答 1

1

我在 QT 支持中心问过同样的问题,答案如下:不幸的是,手柄位置没有自动更新功能。setSizes() 函数是更新尺寸的好选择,但我可以看到每次重新计算尺寸的问题。另一种方法是实现自己的拆分器并调用其受保护的函数 moveSplitter()。您仍然需要计算拆分器手柄需要移动到的位置,但您不必重新计算所有小部件大小。

于 2015-03-25T08:40:01.507 回答