【问题标题】:Qt: Align controls that are in separate layoutsQt:对齐位于不同布局中的控件
【发布时间】:2011-04-22 01:25:32
【问题描述】:

在使用 Qt Designer 设计的表单上,我有两个 QGroupBox,每个都有一堆控件。两个分组框的内容几乎相同(带有关联标签的 QLineEdits)。

然而,我想做的是将控件对齐在一起,就好像它们是同一网格布局的一部分一样。但是由于它们在不同的容器中,它们不能共享相同的布局,我不想给它们一个固定的宽度。

有没有办法在 Qt Designer 中做到这一点?如果没有,有没有办法在代码中做到这一点?

谢谢!

【问题讨论】:

    标签: qt layout qt-designer


    【解决方案1】:

    在 Designer 中无法做到这一点。据我所知,Qt 也没有提供在代码中执行此操作的好方法。如果你真的想要这个,你可能不得不依赖一些有点 hacky 的东西。

    这是我的第一个想法:在包含两个分组框的小部件中覆盖 resizeEvent() 以获取所有标签的首选大小(通过 sizeHint() 或 minimumSizeHint())并设置所有标签的固定宽度到最大的首选宽度。

    我建议您问问自己这是否真的很重要(是否值得花时间开发?)并考虑是否可以通过稍微不同的 UI 设计完全避免该问题。

    顺便说一句,如果你还没有的话,你可能想看看 QFormLayout。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-09-17
      • 2013-04-30
      • 2013-07-07
      • 2021-08-31
      • 2011-04-15
      • 1970-01-01
      • 1970-01-01
      • 2017-06-19
      相关资源
      最近更新 更多