c++

您所在的位置:网站首页 qt对齐按钮 c++

c++

2024-06-01 11:35| 来源: 网络整理| 查看: 265

如何在QHBoxLayout左,中,右对齐子项 时间:2017-02-07 21:32:43

标签: c++ qt layout

我有一个 QHBoxlayout ,其子项设置如下:

QHBoxlayout h = new QHBoxlayout(); QLLabel leftLabel = new QLLabel("Left"); QLLabel centerLabel = new QLLabel("Center"); QHBoxlayout rightContent = new QHBoxlayout(); QLLabel r1 = new QLLabel("2"); QLLabel r2 = new QLLabel("3"); rightContent.addWidget(r1); rightContent.addWidget(r2); h.addWidget(leftLabel); h.addWidget(centerLabel); h.addLayout(rightContent);

这将创建一个QHBoxlayout,其中所有子项都在左侧浮动。我希望 leftLabel 位于左侧, centerLabel 位于中间位置, rightContent 位于最右侧。

我怎样才能做到这一点?

提前谢谢大家。

更新

我想要下面的左,中心,右:

enter image description here

2 个答案:

答案 0 :(得分:6)

只需在"左","中心"之间添加间隔物和"对":

QHBoxLayout *h = new QHBoxLayout(&parentWidget); h.addWidget(leftLabel); h.addStretch() h.addWidget(centerLabel); h.addStretch() h.addLayout(rightLabel);

可能有助于在Qt Designer中练习。

答案 1 :(得分:1)

根据需要,还可以在添加小部件时定义对齐方式,如下所示:

auto h = new QHBoxLayout(); h->addWidget(leftLabel, 0, Qt::AlignLeft); h->addWidget(centerLabel, 0, Qt::AlignCenter); h->addLayout(rightLabel, 0, Qt::AlignRight);

有关更多信息,请参见here



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3