設定為系統字型,用三個set
qtextcodec::setcodecfortr()
qtextcodec::setcodecforcstrings()
qtextcodec::setcodecforlocale()
《qt快速入門》一書中的方法,只需要乙個set
qtextcodec::setcodecfortr()
但是在label中填寫文字的時候,需要
qobject::tr()
qtextcodec類提供了文字編碼的轉換功能。
qtextcodec類中的靜態函式setcodecfortr()用來設定qobject::tr()函式所要使用的字符集。
qtextcodec::codecforlocale()返回了系統指定的字符集,qtextcodec::setcodecfortr()設定tr()用到的字符集。
總之,為了顯示中文,需要設定字符集,然後使用qobject::tr()函式將字串進行編碼轉換。
QT學習 中文顯示亂碼
一 中文在qt中顯示亂碼的原因 是因為編碼和解碼的不對應造成的,比如我們在windows xp vs2010下原始碼檔案 cpp 的字符集是gbk,而qt比如qstring的編碼方式是utf。同樣的 我是漢字 這幾個字,gbk編碼等價於 const char str xce xd2 xca xc7 ...
qt中文顯示亂碼(1
昨天電腦重新安裝了系統,導致所有的軟體都要重新安裝一遍。沒問題!裝嘛是吧。當把qt4.7.4安裝好以後,編譯我之前寫的軟體,發現不能顯示中文了。奇怪啊,在之前的系統上面我已經做了操作了,如下 按道理說應該沒什麼問題了,可是執行出來的效果卻是 然後我又,在網上查詢解決方法,所有的方式方法,都集中在字元...
qt 中文亂碼 Qt中文亂碼問題
接觸了qt,由於習慣中vs,如果使用vs寫qt 剛接觸很快就發現有中文亂碼問題,我的解決方法如下 新建乙個標頭檔案,比如qtchcharset.h,標頭檔案中內容如下 pragma once ifdef q os win q os win 新增後支援gb2312,utf 8 bom,unicode ...