如何让用户垂直调整窗口大小

时间:2017-04-19 23:41:04

标签: c++ qt resize qt-creator

我希望用户能够垂直调整Window的大小,但我不确定如何执行此操作。我在Qt Creator中选择了我的根对象(类型QWidget的视图),但我没有看到允许用户垂直调整对象大小的选项。这是否必须通过代码完成?

1 个答案:

答案 0 :(得分:1)

默认情况下,如果QWidget是顶级窗口,则可以调整其大小,因为minimumSizemaximumSize不同,因为它们表示调整大小的范围。< / p>

如果您想让用户垂直调整,那么您只需将minimumWidthmaximumWidth设置为相同的值(可能是当前宽度)您的QWidget)。 Qt将负责指示其余的基础窗口管理器。

您可以在Designer中执行此操作,也可以使用setMinimumWidthsetMaximumWidth方法以编程方式执行此操作。 编辑:正如评论中所提到的,有一种setFixedWidth方法可以简化此操作(并使其在代码中更明确)。

当然,你可以使用组合来设置最小宽度(或高度,或两者 - 最小尺寸 - ),以避免顶级窗口折叠并变得无法使用,设置最大尺寸......常用设置是minimumSize = maximumSize,因此您可以将窗口设置为固定大小(您可以使用方便方法setFixedSize)。

PS:看到这与sizePolicy无关,active只是指示父布局在放置小部件时可以采取哪些操作 - 忽略大小。由于顶级窗口没有父布局,因此不会使用此策略。