0

vc++ で QT を使用するプロジェクトがあり、UI で文字列を別の言語に配置する必要があります。Visual Studio 2012 のビジュアル スタジオ アドインで QTdesigner を使用して UI を作成し、QT プラグインをインストールして Qt 機能も使用しました。

.pro ファイルを作成し、以下を追加しました。

SOURCES      += main.cpp
TRANSLATIONS += languagefileqt_es.ts

リンギスト ファイル SOURCES emminensmultiportqt_es.ts を生成すると、IU 内のすべての文字列が正しく検出されました。その後、Qtlinguist のリリース機能を使用して .qm ファイルを生成します。

私のリソースファイルは次のとおりです。

<RCC>
    <qresource prefix="MyAppQT">
        <file>languagefileqt_es.qm</file>
    </qresource>
</RCC>

次に、これを main.cpp に追加しました。

QTranslator translator;
bool loaded = translator.load("languagefileqt_es");
qDebug() << "loaded " << loaded;
a.installTranslator(&translator);

また、loaded はすべての場合に true を返します。私の問題は、アプリケーションの実行時に UI が翻訳されないことです。効果がないからおかしい。

何が欠けているか、何をチェックアウトできるかについての手がかりはありますか?

どうもありがとう

4

2 に答える 2

0

「languagefileqt_es」が言語ファイルの正しい名前でよろしいですか? 代わりに「languagefileqt_es.qm」が必要です。

正しいディレクトリから読み込んでいますか? 内部でコンパイルされたリソース (:/languagefileqt_es.qm) からロードする場合を除き、絶対パスを参照して、正しいものを確実にロードする必要があります。

于 2016-01-27T10:37:42.743 に答える