gpt4 book ai didi

qt - 在 Qt 中,如何对齐不同组框中的表单元素?

转载 作者:行者123 更新时间:2023-12-04 01:08:48 25 4
gpt4 key购买 nike

我正在尝试创建一个标准的双列表单,其中第一列是文本标签( QLabel ),第二列是交互式小部件,通常是文本字段( QLineEdit )。我们决定将具有共同主题的表单行放置在 QGroupBox 中。 ,因此在一个单独的布局中而不是主布局。因此,每个 QGroupBox 内的表单元素不要与 QGroupBox 之外的表单元素水平对齐es.

我如何以一种方式使用组框和布局,以便 QLabel s 和 QLineEdit s 内部和外部组框是否(水平)彼此对齐?

谢谢!

最佳答案

您可以将 groupboxes 内所有标签的 minimumWidth 属性设置为刚好足以显示最宽标签的宽度。这将使不同组框内的所有标签对齐。

现在,要使 groupboxes 外部的标签与内部的标签对齐:首先,我假设每个 label/lineedit 对都在其自己的水平布局中,或者您在网格内有多行。无论哪种情况,您都可以将标签的 minimumWidth 设置为与 groupboxes 中的标签相同的值。最后,调整水平(或网格)布局上的 layoutLeftMargin、layoutRightMargin 和 layoutSpacing 属性,直到 label/lineedit 对的左右边缘与 groupboxes 内的边缘对齐。

如果您还没有使用 Qt Creator 中的表单编辑器或 Qt Designer 来构建您的 UI,我发现它使这项任务变得相当容易。

我不得不承认,这感觉有点笨拙,但在我构建的简单测试用例中,它似乎工作正常。另一方面,如果用户更改字体大小,这似乎可能会中断。也许有更好的方法?

希望这可以帮助。

关于qt - 在 Qt 中,如何对齐不同组框中的表单元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1331308/

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