终极解决办法,去文泉驿官方网[url]http://wenq.org/[/url]下载一个字库回来。里面有很多字库,我选择常用的正黑。正黑字库文件下载地址是:[url]http://downloads.sourceforge.net/project/wqy/wqy-zenhei/0.8.38%20(Pangu)/wqy-zenhei-0.8.38-1.tar.gz?use_mirror=nchc&18950117
下载回来的文件里面有这样一个文件:wqy-zenhei.ttc,我自己改了它的名字,叫zhenghei.ttc(这个由你喜欢),然后放到/opt/qt-4.5/lib/fonts里面,再在主函数里面修改字库的ID:
int main(int argc, char *argv[])
{
QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
QApplication a(argc, argv);
Widget w;
w.setFont(QFont("zhenghei",14,QFont::Normal));//这行是关键,没有这行是显示不了中文的。
w.setWindowTitle(QObject::tr("为什么why?"));
w.show();
return a.exec
}
ok!搞掂了,板子上的QT终于可以显示中文了。由于文件比较大,最好可以去官方网站下载。我这里只贴出工程文件。
下载回来的文件里面有这样一个文件:wqy-zenhei.ttc,我自己改了它的名字,叫zhenghei.ttc(这个由你喜欢),然后放到/opt/qt-4.5/lib/fonts里面,再在主函数里面修改字库的ID:
int main(int argc, char *argv[])
{
QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
QApplication a(argc, argv);
Widget w;
w.setFont(QFont("zhenghei",14,QFont::Normal));//这行是关键,没有这行是显示不了中文的。
w.setWindowTitle(QObject::tr("为什么why?"));
w.show();
return a.exec
}
ok!搞掂了,板子上的QT终于可以显示中文了。由于文件比较大,最好可以去官方网站下载。我这里只贴出工程文件。