這塊網上找到很多文章,也是按照網上的做的,但是有很多不成功,這裡把自己成功的總結下。在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