• 8406阅读
  • 8回复

[提问]qt4中如何显示中文(已经解决) [复制链接]

上一主题 下一主题
离线hrz520520
 

只看楼主 倒序阅读 楼主  发表于: 2007-03-30
— 本帖被 XChinux 从 Qt基础编程 移动到本区(2013-04-01) —
操作系统xp  QT4+MINGW  ,我已经生成了 .ts和.qm文件,可不知道怎么弄(比如说头文件)才能让那些想转换的 tr里面的东西显示中文
main.cpp是这样写的
#include <QApplication>
#include <QTranslator>

#include "ftpwindow.h"

int main(int argc, char *argv[])
{
    Q_INIT_RESOURCE(ftp);

    QApplication app(argc, argv);
    QTranslator translator;
    translator.load("zh_CN");
    app.installTranslator(&translator);
   
    FtpWindow ftpWin;
    ftpWin.show();
    return ftpWin.exec();
}

make也没有错就是不显示中文,请问我到底错在哪里?
[ 此贴被hrz520520在2007-03-31 23:08重新编辑 ]
离线shengli4504

只看该作者 1楼 发表于: 2007-03-30
linux下的 我到是知道点 是国际化方面的吧.. linguist 和 release
离线hrz520520

只看该作者 2楼 发表于: 2007-03-30
这两个我都生成了啊,可都没有翻译过来啊
离线myer

只看该作者 3楼 发表于: 2007-03-30
例子:QTDIR/Qt/doc/html/qtranslator.html
    int main( int argc, char ** argv )
    {
        QApplication app( argc, argv );

        QTranslator translator( 0 );
        translator.load( "french.qm", "." );
        app.installTranslator( &translator );

        MyWidget m;
        app.setMainWidget( &m );
        m.show();

        return app.exec();
    }
http://user.qzone.qq.com/56430808
离线hrz520520

只看该作者 4楼 发表于: 2007-03-30
楼上的,我不知道你QTDIR/Qt/doc/html/qtranslator.html是怎么意思?
离线hrz520520

只看该作者 5楼 发表于: 2007-03-30
怎么没有人顶啊!我用中文搜索了下里面都说的很模糊,就说到了生成.qm,生成qm了接下来怎么做?能具体点好不?
离线XChinux

只看该作者 6楼 发表于: 2007-03-30
为方便起见,直接在main函数里加入下面的代码(内码使用UTF-8 或者 GBK,依自己情况而定)

        QTextCodec *codec = QTextCodec::codecForName("UTF-8");
    QTextCodec::setCodecForLocale(codec);
    QTextCodec::setCodecForCStrings(codec);
    QTextCodec::setCodecForTr(codec);
    QApplication::addLibraryPath("../plugins");


然后 在写代码时,直接在里面使用中文,比如
lineEdit1->setText("请输入中文");
[ 此贴被XChinux在2007-03-30 23:45重新编辑 ]
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线hrz520520

只看该作者 7楼 发表于: 2007-03-30
这样不行,能生成exe,可惜双击运行不出来,说调试过程有错误!
离线hrz520520

只看该作者 8楼 发表于: 2007-03-31
问题解决了哈哈!是一位网友帮我解决的嘿嘿!其实问题是我自己在调用.qm的时候没有把路径写对。一般意义上 exe和qm同一路径就行了,如果不在同一个目录就的translator.load(“qm的路径”)!
[ 此贴被hrz520520在2007-03-31 09:18重新编辑 ]
快速回复
限100 字节
 
上一个 下一个