Qt 中文顯示 QMessageBox按鈕中文顯示

2021-06-08 17:37:38 字數 1074 閱讀 1568

1,qt中如何顯示中文呢?

qtextcodec*pcodec=qtextcodec::codecforname("system");//獲取系統字型編碼

qtextcodec::setcodecforlocale(pcodec);

qtextcodec::setcodecforcstrings(pcodec);

qtextcodec::setcodecfortr(pcodec);

如果你的作業系統當前是中文環境的話,就可以顯示中文。

2,通過第1步的操作就可以在文字中顯示中文了,但是還不能在內建的qmessagebox按鈕上面顯示中文。

該怎麼辦呢?

(1)從qt安裝目錄下面將檔案「qt_zh_cn.qm」複製乙份到你的專案目錄下。

例如,我是從「d:\qtsdk\desktop\qt\4.7.3\msvc2008\translations」目錄下複製的「qt_zh_cn.qm」檔案。

你的專案目錄指你專案的.pro檔案所在的目錄。

(2)在專案目錄中新建乙個文字檔案,輸入如下內容:

qt_zh_cn.qm

儲存後,將該文字檔案的字尾名由txt改為qrc,表明這是資源檔案。

(3)在qt creator中將上述檔案加到你的專案中。

(4)修改**如下,表示要載入相應的資源檔案。

qtranslator otranslator;

otranslator.load("

:/qt_zh_cn"); // 注意此處字串

以「:/」開頭

,後接的字串是剛才複製的qm檔案的名字

(5)重新編譯、執行程式即可。

****************************************====

執行效果如下:

後記:當時筆者希望qmessagebox的按鈕能中文顯示,在網上搜尋發現有許多同學有相同的問題,然而網上給出的答案卻要麼是本文敘述的第1個問題的答案,要麼就是沒有說清楚。所以,專門在這裡貼出來,希望能幫到大家。

Qt顯示中文

以下說的只是自己的一些總結,不對了或不全面還望指正。qtextcodec setcodecfortr qtextcodec codecforname gb18030 qfont font times 10,qfont normal,false 就上面的3句話就ok了,而且是在qt4環境下 網上有個方...

Qt中文顯示

qt預設的編碼 unicode 是不能顯示中文的,可能由於windows的預設編碼的問題,windows預設使用 gbk gb2312 gb18030 所以需要來更改qt程式的編碼來解決中文顯示的問題。qt中有專門的乙個類來處理編碼的問題 qtextcodec 1.設定qobject的成員函式tr ...

Qt 中文顯示

qt預設的編碼 unicode 是不能顯示中文的,可能由於windows的預設編碼的問題,windows預設使用 gbk gb2312 gb18030 所以需要來更改qt程式的編碼來解決中文顯示的問題。qt中有專門的乙個類來處理編碼的問題 qtextcodec 可以以下的這些方法來設定編碼。1.設定...