如何使用鼠标在Qt中改变网格布局单元格的大小?

6
我使用网格布局(水平和垂直都有)。我喜欢的是当调整窗口大小时,填充整个窗口内容。但是这个扩展管理得不好。我经常想要仅更改网格布局中的一个列的大小,而不更改窗口的大小。例如在Windows资源管理器中。有两列 - 左侧目录列表和其内容在右侧。我总是可以按下鼠标按钮并拖动它们之间的分隔线来相互更改列的大小。

我该如何在Qt中实现这一点?

enter image description here

2个回答

6
您需要在这种特定情况下使用QSplitter而不是QGridLayout(当您只想显示2个小部件时)。QSplitters可以拖动。

2
你正在寻找 QSplitter
(以下是在Qt Designer中的步骤)
1.将你的小部件分组,并单击“水平/垂直在分隔器中布局”。 enter image description here 2.将此组放入另一个布局中(例如QGridLayout)以自动扩展它。 3.恭喜!你的布局现在可以从步骤1拖动并从步骤2扩展。

谢谢。它已经起作用了。一开始我不明白为什么这个选项没有启用。但后来证明在网格布局中必须这样做。 - Massimo

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