【发布时间】:2016-04-25 06:27:52
【问题描述】:
我在 QLineEdit 下方有一个 QLabel,具有相同的大小和对齐属性:
QLineEdit *lineEdit = new QLineEdit("999");
lineEdit->setFixedWidth(100);
lineEdit->setAlignment(Qt::AlignRight);
//
QLabel *label = new QLabel("999");
label->setFixedWidth(100);
label->setAlignment(Qt::AlignRight);
//
QLayout *layout = new QVBoxLayout;
layout->addWidget(lineEdit);
layout->addWidget(label);
这是如何呈现的:
如何使底部label 的文本与lineEdit 的文本完全右对齐?
全奖,如果您找到适用于所有平台的解决方案,并且当lineEdit 和label 中的字体大小不同时也适用。
【问题讨论】:
-
如您所见,
QLineEdit使用从边框到文本的分隔空间(很像QLayout的边距。您可以在label周围添加布局以模拟这种行为 -
如果你需要计算一个精确的填充,你可以检查QLineEdit::textMargins()加上考虑边框宽度。