C++ Qt插件翻译中的问题

C++ Qt插件翻译中的问题,c++,qt,plugins,translate,C++,Qt,Plugins,Translate,我开发了一个Qt应用程序和一个加载了QPluginLoader的插件。 我翻译了我的插件并创建了一个.qm文件,但加载这个.qm文件时插件并没有翻译 这是我的密码: int main(int argc, char *argv[]) { QApplication a(argc, argv); QTranslator translator; translator.load(QLocale::system(), "tr", "_", QString("tra

我开发了一个Qt应用程序和一个加载了
QPluginLoader
的插件。 我翻译了我的插件并创建了一个.qm文件,但加载这个.qm文件时插件并没有翻译

这是我的密码:

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QTranslator translator;
    translator.load(QLocale::system(), "tr", "_", 
        QString("translations/myplugin"));
    QCoreApplication::installTranslator(&translator);
我确认
installTranslator
已成功,但未翻译任何文本。
你能告诉我如何翻译插件中的文本吗?

我不能从你的问题中看出多少,但一旦你安装了翻译器,每次你需要翻译一个单词时,你都需要调用它。它会给你这样的东西:

QString word;
if (word.toTranslate()) //you want a word translated
    word = translator.tr("This will be translated");
else                    // you don't need a translation 
    word = "This will not be translated";

你知道所有需要翻译的字符串都必须由tr()宏包装吗?我肯定是用tr()包装了所有字符串。你的意思是我需要将QTranslator传递给我的插件吗?