这块网上找到很多文章,也是按照网上的做的,但是有很多不成功,这里把自己成功的总结下。在Qt中使用中文,按照网上的很多方法,Ubuntu中显示正常,但是移植到开发板上显示有问题,这里根据我的操作做个整理。
显示中文主要是两点,一是编码,而是字体。
关于编码网上查的资料各种说法都有,utf8 gbk gb2312的,我用的是utf8.
开发板上必须也有对应的中文字体才能够显示中文,我这里在Ubuntu 12.04的安装目录中usr/share/fonts/truetype/wqy目录下,将这个拷贝到开发板Qt库中的字体库中,注意要将Qt的字体路径加入环境变量QT_QWS_FONTDIR=/opt/qt-4.8.4/lib/fonts
最后,在主函数中加入代码即可:
#include "widget.h" #include <QApplication> #include <QTextCodec> int main(int argc, char *argv[]) { QApplication a(argc, argv); QTextCodec *codec = QTextCodec::codecForName("utf8"); QTextCodec::setCodecForLocale(codec); QTextCodec::setCodecForCStrings(codec); QTextCodec::setCodecForTr(codec); QFont font; font.setFamily(("wqy-microhei")); Widget w; w.setWindowFlags(Qt::FramelessWindowHint); w.show(); return a.exec(); }
在使用的时候使用tr宏例如ui->statelabel->setText(tr(“摄像头已经运行!”))
这样在开发板上运行的时候就可以使用中文字体,而且不会有字体大小以及排版等方面的问题。
Qt 的详细介绍:请点这里
Qt 的下载地址:请点这里
推荐阅读:
Ubuntu 环境下Gtk与QT编译环境安装与配置 http://www.linuxidc.com/Linux/2013-08/88539.htm
Linux系统下QT环境搭建 http://www.linuxidc.com/Linux/2013-07/87576.htm
Ubuntu下QT控制台程序无法运行的解决方案以及XTerm的配置方法 http://www.linuxidc.com/Linux/2013-06/86244.htm
Ubuntu 10.04下QT4.7.4移植详解 http://www.linuxidc.com/Linux/2013-01/77930.htm
Linux下为刚安装好的Qt Creator 创建桌面启动图标 http://www.linuxidc.com/Linux/2012-08/67214.htm
Ubuntu 11.04安装QT Creator 2.5.0 http://www.linuxidc.com/Linux/2012-06/62607.htm
Qt creator for PlayBook安装过程 http://www.linuxidc.com/Linux/2012-05/60652.htm