繁体   English   中英

如何在QT 5中显示特殊字符?

[英]How to display special characters in QT 5?

摘自我的代码:

  char msg[80];
  sprintf(msg, "Chuck Temperature: %.1f °C", temperature);
  ui.TemperatureLabel->setText(QString::fromUtf8(msg));

我得到了什么:

什么行不通:

  • 用度数替换度数符号(°); 将textFormat设置为RichText时。 它显示为“ Chuck Temperature:° C ”。

  • 添加QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8")); 没有任何帮助。

我在Visual C ++下工作,如果这很重要的话。

那么使用QString呢? 它为您处理特殊字符。

如果我理解您的代码,您想要更新QLabel的文本。

您可以执行以下操作:

QString msg("Chuck Temperature: " + QString::number(temperature) + " °C");
ui.TemperatureLabel->setText(msg);

请注意,您可以在QString::number()指定所需的精度。 在这里你可以看到如何做到这一点。
如果要像%.1f那样格式化温度,只需编写以下内容:

QString msg("Chuck Temperature: " + QString::number(temperature, 'g', 2) + " °C");
ui.TemperatureLabel->setText(msg);

我希望它能解决你的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM