在Qlabel上设置一个数字的文本格式

时间:2016-06-23 09:28:25

标签: qt qlabel text-formatting

我正在Qt上写我的第一个应用程序。到目前为止,要显示QLabel上的任何文字,我使用以下内容来设置格式和文字:

ui->lat_UAV_label->setText(QString("<span style=\" font-size:18pt; 
  font-weight:600; color:#0009d8;\">%1</span>").arg(lat * RAD2DEG));

其中“lat”是双精度数,“RAD2DEG”是从弧度转换为度数的常数。但是,我只想在标签上显示2位小数。我尝试使用QString().number来做,但格式样式丢失了:

ui->lat_UAV_label->setText(QString("<span style=\" font-size:18pt; 
    font-weight:600; color:#0009d8;\">%1</span>").number(lat * RAD2DEG, 'f', 2);

我尝试过其他方法,但它不起作用。我认为这应该比我想做的要简单得多,但因为我是新手,我不知道。

1 个答案:

答案 0 :(得分:0)

我曾经尝试过@Karsten Koop,但我做错了所以我以为我无法这样做。非常感谢,它现在正在工作:

ui->lat_UAV_label->setText(QString(myBlueStyle).arg(lat * RAD2DEG, 0, 'f', 2);

其中myBlueStyle定义为:

QString myBlueStyle = "<span style=\" font-size:18pt; font-weight:600; color:#0009d8;\">%1</span>";