Qt5.8解决QLabel等控件中文编译不过的问题

tech2024-04-11  69

本猿使用Qt5.8的QLabel遇到及其异常怪的事情,对中文支持有问题。

QLabel *label1=new QLabel("时间");

编译可以通过,也可以显示。

QLabel *label1=new QLabel("开工时间");

编译就不能通过了。不就多了几个字吗,至于嘛?

其实这就是Qt对中文支持还存在问题,忍忍吧,看怎么解决。

结果网上一查都是一些不靠谱的解决,什么utf8如何转为gbk等等。

真正的原因是Qt5.8虽然工程文本编码设置为utf-8,但是对中文的支持有问题。

必须增加下面一句,保证编码确实为utf-8。

 

#pragma execution_character_set("utf-8")

同时检查工程设置中文本编辑器,使得UTF-8编码带有BOM。

重新编译,一切搞定。不能不说,Qt你啥时能比较给力的支持中文腻?

最新回复(0)