每用QtCreator創建一個Qt項目時都要為它添加中文支持,比如qt4:
就要在main.cpp里添加
QTextCodec* codec = QTextCodec::codecForName("GB18030");
QTextCodec::setCodecForCStrings(codec);
QTextCodec::setCodecForLocale(codec);
QTextCodec::setCodecForTr(codec);
這樣很不爽,修改了一下工程模板,使它在創建Qt項目是自動加上中文支持。
首先修改控制台模板,在我的機器上路徑是:D:\Qt\qtcreator-4.0.3\share\qtcreator\templates\wizards\projects\qmake\consoleapp\main.cpp
修改后的main.cpp代碼如下
%{Cpp:LicenseTemplate}\
%{JS: QtSupport.qtIncludes([ 'QtCore/QCoreApplication' ],
[ 'QtCore/QCoreApplication' ]) }\
#include <QtCore>
#if QT_VERSION >= 0x050000
#pragma execution_character_set("utf-8")
#endif
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
a.addLibraryPath(a.applicationDirPath());
#if QT_VERSION < 0x050000
QTextCodec* codec = QTextCodec::codecForName("GB18030");
QTextCodec::setCodecForCStrings(codec);
QTextCodec::setCodecForLocale(codec);
QTextCodec::setCodecForTr(codec);
#else
QTextCodec::setCodecForLocale(QTextCodec::codecForName("GB18030"));
#endif
return a.exec();
}
</pre><pre code_snippet_id="1822416" snippet_file_name="blog_20160811_3_5046410" name="code" class="cpp">然后修改窗口程序模板,路徑為:D:\Qt\qtcreator-4.0.3\share\qtcreator\templates\qt4project\main.cpp
修改后的main.cpp代碼如下:
#include "%INCLUDE%"
#include <%QAPP_INCLUDE%>
#include <QtCore>
#if QT_VERSION >= 0x050000
#pragma execution_character_set("utf-8")
#endif
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
a.addLibraryPath(a.applicationDirPath());
#if QT_VERSION < 0x050000
QTextCodec* codec = QTextCodec::codecForName("GB18030");
QTextCodec::setCodecForCStrings(codec);
QTextCodec::setCodecForLocale(codec);
QTextCodec::setCodecForTr(codec);
#else
QTextCodec::setCodecForLocale(QTextCodec::codecForName("GB18030"));
#endif
%CLASS% w;
%SHOWMETHOD%
return a.exec();
}
這樣就能在創建項目時,項目就能自動支持中文了。
提供修改后的項目模板下載地址:
http://yunpan.cn/c6UdeRCjVmryV 訪問密碼 f0da
把目錄放到
D:\Qt\qtcreator-4.0.3\share\qtcreator
下覆蓋即可。
D:\Qt\qtcreator-4.0.3是安裝目錄
最后加一個生成的程序中防止文件太亂的東東:
D:\Qt\qtcreator-4.0.3\share\qtcreator\templates\wizards\projects\qmake\consoleapp\file.pro
加上
MOC_DIR = ./moc
RCC_DIR = ./rcc
OBJECTS_DIR = ./obj
UI_DIR = ./ui
---------------------
作者:hats8888
來源:CSDN
原文:https://blog.csdn.net/hats8888/article/details/52179403
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!
