QLabel中的多个文本对齐

时间:2017-10-19 07:53:15

标签: html qt pyqt text-alignment

我有一个带QLabel的QGridLayout,它显示一些值和单位到该值。为了获得良好的可读性,我希望值在QLabel中左对齐,并且单元要右对齐。

起初我想用QtStyleSheets做到这一点,但我找到的唯一方法是改变整个小部件的文本对齐方式,如下所示:

myLabel.setStyleSheet("QLabel {qproperty-alignment: AlignRight}")

我的第二个想法是通过HTML来实现它,但在那里我也遇到了一些问题。这是我试过的:

myLabel.setText("<div align=\"left\">Value<\div><div align=\"right\">Unit<\div>")

这是正确的,之后该值左对齐且单位右对齐,但它们不再在同一行。然而,在我看来,更有希望的方法。不幸的是我对HTML不是很熟悉。 有人可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

或者如果你真的只想在QLabel中使用html继续使用表而不是div。但@saeed是对的,更好地使用Qt Layouts和它们之间的间隔。

HTML示例:

myLabel.setText("<table width=\"100%\"><td width=\"50%\" align=\"left\">Value</td><td width=\"50%\" align=\"right\">Unit</td></table>");

答案 1 :(得分:0)

我建议你使用两个Qlabels和一个像下面的水平间隔图像,这很快,你可以让Qt处理整个设计布局。

some helpful image