gpt4 book ai didi

c++ - Mac 上的 qt : Form Layout fails to stretch horizontally

转载 作者:行者123 更新时间:2023-11-30 04:47:35 29 4
gpt4 key购买 nike

我仍在尝试用 qt 做一些非常基本的事情,这一直很艰难。我专门针对 Mac。我目前的问题是让表格不那么糟糕。

简单的问题。创建一个新的 MainWindow 应用程序。进入 Qt Creator(打开 Forms -> mainwindow.ui)。

将 3 个标签拖动到位。然后我拖了 2 行编辑和一个拨号,但为了好玩,这部分可能无关紧要。

单击主窗口,然后告诉它使用表单布局。在 Qt Creator 中,如果我调整窗口大小,我的各种行编辑将展开以填充可用空间,就像我想要的那样。

运行应用程序。所有的行编辑字段都是固定长度,非常短(如果我不覆盖它们的最小宽度),并且在调整窗口大小时不调整大小。

四分之三使用表单布局的原因是为了调整大小。

我试过在设置为表单布局之前点击中央小部件:行为没有变化。

如果我使用网格布局,我确实得到了合理的行为,尽管我必须在底部添加一个垂直分隔符,否则我的表盘会在我调整窗口大小时疯狂地调整大小。

所以...我只是在表单布局方面做错了什么?还是它在 Mac 上运行不佳,我应该改用网格布局?

我真的很想念 Motif 的 XmFormLayout。设置所有约束需要时间,但我可以让我的表单完全按照我的意愿行事。啊,但是 1990 年代。

最佳答案

在可以看到对象的右侧面板上,单击 centralWidget。在属性面板中,向下滚动直到找到表单布局的布局属性。将 layoutFieldGrowthPolicy 设置为 ExpandingFieldsGrow

默认情况下,行编辑不会增长以填充 macOS 上的可用空间,因为它们不应该这样做。这是某种 macOS UI 指南。 QFormLayout 默认遵循平台约定。

It would also be nice if I can figure out how to NOT necessarily expand everything to full width. I have a few Line Edit widgets that I'd like to keep short. They're going to hold TCP port numbers.

对于那些,将受影响的行编辑的 Horizo​​ntal Policy 属性(它分组在属性面板的 sizePolicy 属性组中)设置为合适的值。在这种情况下,可能是 Fixed,但首先要查看文档以了解每个设置的作用。

关于c++ - Mac 上的 qt : Form Layout fails to stretch horizontally,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56176361/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com