在使用QLabel做一个计时器的时候,显示阿拉伯语是,都是问号,但是其他地方的阿拉伯语能正常显示。
在中文我的格式为: QString strTemplate ="%02d时%02分%02d秒",那如果是阿拉伯语,应该写成怎样的格式?
检查一下文件编码格式,建议设置为utf-8。
然后在main()里设置app的编码格式。
#include <QTextCodec>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
//设置字体(我也不知道阿拉伯文用什么字体,这里拿微软雅黑举例)
a.setFont(QFont("Microsoft Yahei", 9));
//设置中文编码
#if (QT_VERSION <= QT_VERSION_CHECK(5,0,0))
QTextCodec *codec = QTextCodec::codecForName("UTF-8");
QTextCodec::setCodecForLocale(codec);
QTextCodec::setCodecForCStrings(codec);
QTextCodec::setCodecForTr(codec);
#else
QTextCodec *codec = QTextCodec::codecForName("UTF-8");
QTextCodec::setCodecForLocale(codec);
#endif
return a.exec();
}