gcc、clang等
編譯器使用
中文都是非常簡單的,唯獨msvc是個毒瘤,本文給出的方案均可跨gcc、clang平台,所以在文字上只需提及msvc的版本。
對vs2015update2及以上版本
如果你在使用vs2015update2、vs2017。只需要在.pro檔案內加入如下**即可。(原始碼使用utf8,不需要bom)
複製**
win32-msvc*:
對vs2008~vs2015update1
如果你在使用vs2008(需要打補丁)、vs2010、vs2013、vs2015(未安裝update2),或者你的原始碼需要相容這些編譯器,
當你在qt5的c++原始檔內使用中文時
,你需按以下步驟操作。(不止是中文,其實你完全可以在**中使用日韓法俄語等等各國語言)
0. 原始檔儲存為帶bom的utf-8格式
如果你要支援這些vs版本,且需要跨
其他平台,儲存為帶bom的utf-8是必不可少的。而後,原始碼中的所有字串常量使用 qstringliteral 巨集進行包裹
複製**
qstring s1 = qstringliteral("中國");
edit.settext(qstringliteral("中國"));
僅僅這樣就可以了。
但是如果,除了寬字串外,你還需要使用窄字串,比如
複製**
qstring s1 = "中國";
qstring s2 = tr("中國");
qbytearray s3 = "中國";
const char * s4 = "中國";
edit.settext("中國");
那麼,你需要:
1. qt5要求窄字串執行字符集為 utf8
在檔案頭部新增下面3行**
複製**
#ifdef _msc_ver
#pragma execution_character_set("utf-8")
#endif
2. [msvc] 如果你不在用msvc,請跳過該步驟
如果你在使用
msvc2005
或msvc2012
,請換用其他版本的msvc
如果你在使用
msvc2008
,請公升級到最新的sp1,並
安裝kb980263
補丁如果你在使用
msvc2010
、msvc2013
或更新版本,本步驟不需要額外操作
--具體細節,請參考
Qt5 C 原始碼中使用中文的簡單步驟
本文不講任何道理,當你在qt5的c 原始檔內使用中文時 你只需按順序簡單照做即可。不止是中文,其實你完全可以在 中使用日韓法俄語等等各國語言 0.通用 原始檔儲存為帶bom的utf 8格式 如果你準備跨平台,儲存為帶bom的utf 8是必不可少的。而後,原始碼中的所有字串常量使用 qstringli...
Qt中使用中文的簡便方法
在qt中使用中文字元的簡便方法 1 首先,在main函式中加入 include qtextcodec setcodecfortr qtextcodec codecforname gb2312 qtextcodec setcodecforlocale qtextcodec codecforname g...
QT的安裝和實現簡單動畫,有原始碼
因為工作需要,在windows下pc客戶端製作一些動畫效果,所以研究了一下qt,通過學習別人的例子,再加上自己的修改,將例子更加豐富了一下。我先申明一下,我拿的是別人的例子,非常感謝他們的demo,讓我省了很多時間,所以我也拿出來給大家分享一下。首先說下我的開發環境,作業系統 win7 64位 編譯...