|
又做了两个实验:
1.怀疑是在linux下的qtcreator开发环境的问题,于是直接在命令行中调试代码。运行了下面这个脚本:- #!/bin/sh
- source /opt/EmbedSky/qt-4.5/setARM_env
- $QMAKE -project
- $QMAKE
- make clean
- make
- cp -f hello_cn /opt/EmbedSky/root_nfs/opt/qt-4.5/bin/hello_cn
复制代码 我的工程就一个主函数:- #include <QtGui>
- #include <QTextCodec>
- #include <QFont>
- int main(int argc, char *argv[])
- {
- //QWidget w;
- QApplication a(argc, argv);
- QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
- QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
- //QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
- QWidget w;
- w.setFont(QFont("wqy-zenhei",30,QFont::Normal));//这行是关键,没有这行是显示不了中文的。
- w.setWindowTitle(QObject::tr("你好吗?why?"));
- w.show();
- return a.exec();
- }
复制代码 结果还是无效。字体大小改不了,在上面的语句中把“wqy-zenhei”随便改成任意的字符都没影响。我已经把/opt/EmbedSky/root_nfs/opt/qt-4.5/lib/fonts中的字体全部删空了,只留下了wqy-zenhei.ttc。
2.在windows下把wqy-zenhei.ttc放到我windows下qt的安装目录的\lib\fonts中,然后使用visual studio2008调试上面的这个代码,字体不对,大小也换不了。
2. |
|