Qt语言学家没有翻译ubuntu14.04中的字符串

时间:2015-01-27 10:45:20

标签: c++ qt internationalization ubuntu-14.04

有一个简单的翻译代码。它运行在Ubuntu 14.04。

#include <QtGui>
#include <QApplication>
#include <QLabel>
#include <QTextCodec>
int main (int argc,char *argv[])
{
     QApplication app(argc,argv);
     QTranslator qtr;
     qtr.load("hello.qm");
     app.installTranslator(&qtr);
     //QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
     QLabel *label=new QLabel(QObject::tr("hello"));
     label->show();
     retrun app.exec();
}

我按照以下步骤将问答语翻译成了Qt语言学家的中文:

  1. TRANSLATIONS +=hell0.ts添加到hello.pro和lupdate。
  2. 打开Qt语言学家,发现界面是
  3. http://chuantu.biz/t/63/1422351082x-954498824.png

    它不像普通的Qt语言学家界面。这是我的第一个问题。我该如何解决?

    然后我打印你好翻译&#39;你好&#39;,但空白处没有显示任何内容。   我仍然推动完成&#39;按钮。

    我使用gedit打开hello.ts并看到它已被转换为你好。

    图片是

    http://chuantu.biz/t/63/1422354035x1822611189.png

    (3)我使用&#39; lrelease&#39;命令并获取hello.qm

    最后,我运行上面的代码。但结果只是打印'你好'&#39;出。 它没有翻译“你好”。对你好这是我的第二个问题。

    我也使用过其他方法,比如QtTextCodec :: setCodecForTr而不是Qt语言学家,但它仍然没有用。

1 个答案:

答案 0 :(得分:0)

尝试致电retranslateUI(this),以便更新翻译