我有一个带有QGridLayout的QLabels,它显示了一些值和该值的单位。为了获得良好的可读性,我希望QLabel中的值是左对齐的,单元是右对齐的。
起初,我想用QtStyleSheets来实现这一点,但我发现的唯一方法是更改整个小部件的文本对齐方式,如下所示:
myLabel.setStyleSheet("QLabel {qproperty-alignment: AlignRight}")我的第二个想法是通过HTML实现它,但在那里我也遇到了一些问题。以下是我尝试过的:
myLabel.setText("<div align=\"left\">Value<\div><div align=\"right\">Unit<\div>")这做了正确的事情,在此之后,值是左对齐的,单位是右对齐的,但它们已经不在同一条线上了。然而,在我看来,这是一种更有希望的办法。不幸的是,我对HTML不太熟悉。有人能帮忙吗?
发布于 2017-10-19 08:42:11
或者如果你真的只想继续使用QLabel中的html而不是div的,但是@saeed是对的,最好在它们之间使用Qt布局和间隔。
使用HTML的示例:
myLabel.setText("<table width=\"100%\"><td width=\"50%\" align=\"left\">Value</td><td width=\"50%\" align=\"right\">Unit</td></table>");发布于 2017-10-19 08:37:16
我建议你使用两个Q标签和一个水平间隔的图像下面,这是快速的,你可以让Qt处理整个设计布局。

https://stackoverflow.com/questions/46825091
复制相似问题