Linux系统下Qt程序中文乱码,解決linux/Ubuntu下Qt creater 界面程序在編譯運行后無法顯示中文或中文亂碼問題(轉)...

本文解決的主要是界面程序編譯運行后無法顯示中文的問題,如果在creater 中無法輸入中文,下載個IBus或者搜狗之類的中文輸入法即可解決!

首先說亂碼問題,這個很好解決:

如果是在Linux下打開Windows下的項目出現亂碼,選擇編碼為“GB2312”即可!

現在主要來說說程序運行后無法顯示中文或者出現亂碼的情況,被這個問題困擾了很久,網上看了很多資料貼子都沒有解決,所有該添加的都添加了都沒辦法,

http://bbs.csdn.NET/topics/390610841?page=1 按照這個貼子當中的所有方法來解決都沒有成功。

我用的版本是qt-everywhere-opensource-src安裝的4.8.1和4.8.5,剛開始裝的是8.5,看到貼子上有說出現無法顯示中文是這個版本的bug,所以又安裝了個8.1不過還是沒解決

(囧...)。安裝方法是:http://blog.csdn.Net/willib/article/details/21968937

網上有說是缺少中文字體,但其實不然,或許和我一樣只是粗心罷了。。。

終端打開qt配置:qtconfig

選擇Fonts,接下來,請仔細查看Family:當中的字體,仔細一點,其實那里面有中文字體的,只不過是用的拼音,如:Fangsong Ti,Song Ti,選擇其中一個,記着點擊File下

面的保存啊!如:

f0c7d8bc02d46bf70e34da9c3107f799.png

接下來,在main文件中添加頭文件 #include ,然后在 QApplication a(argc, argv); 后添加QTextCodec::setCodecForTr(QTextCodec::codecForName("GB2312"));

QTextCodec::setCodecForTr(QTextCodec::codecForLocal());       //該語句可以解決在子窗口中的亂碼問題!

O了,原來只顯示英文無法顯示中文和中文亂碼都一起解決了!

98e501cfc0503ab5065f49d7d87024e3.png

總結:很多問題,其實並沒有自己想的那么難,做事兒細心一點!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值