【问题标题】:Size constraints for Qt layoutsQt 布局的大小限制
【发布时间】:2019-10-24 21:05:03
【问题描述】:

我的小部件有两种布局。主布局是outerLayout,它应该始终占据整个小部件。这包含一个QLabel 和一个名为innerLayout 的第二个布局。

innerLayout 应该在outerLayout 内居中,并且它应该只大到足以容纳它的小部件。我已经为这两种布局设置了大小限制,但是在下面的代码中,innerLayout 扩展为填充outerLayout

outerLayout = new QVBoxLayout();
outerLayout->addWidget(label);
outerLayout->setSizeConstraint(QLayout::SetMaximumSize);
innerLayout = new QGridLayout();
innerLayout->setAlignment(Qt::AlignHCenter);
innerLayout->setSizeConstraint(QLayout::SetFixedSize);
outerLayout ->addLayout(innerLayout);
setLayout(outerLayout);

如果我将两个布局的大小约束设置为SetFixedSize,两个布局都将减小到它们的最小大小。但我希望外部布局占据整个空间,内部布局使用尽可能小的空间。有什么想法吗?

【问题讨论】:

    标签: qt qt5 qlayout


    【解决方案1】:

    使用间隔作为外部布局的额外小部件。换句话说:垫片将是内部布局的兄弟姐妹,并将内部布局推向其最小需要的表面。您将需要水平和垂直垫片。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-28
      • 1970-01-01
      • 2013-10-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多