言語ごとに異なる.qm
ファイル(異なる.qmファイルにプロジェクトの結果が異なる)を使用してQCoreApplication::installTranslator
を使用して言語を変更したいとします。アプリからすべてのQTranslatorを削除するにはどうすればよいですか?
複数の.qmファイルを使用して結構です。
QCoreApplication::installTranslator(QTranslator *translationFile)
複数の翻訳ファイルをインストールすることができます。翻訳は がインストールされた逆の順番で検索されるため、最後にインストールされた翻訳ファイルのうち、最も多くのものが であり、最初に 翻訳ファイルが検索されます。
しかし、私が古い翻訳者removeをまだ翻訳していないと、それらは翻訳の候補になります。あまり最近インストールされた翻訳者ではありますが。
希望のファイルをロードする前に、以前にロードしたファイルをクリアするにはどうすればよいですか?
私が見る唯一の方法は、私がインストールしたポインタを維持し、変更したいときにそれらを1つずつ削除することですが、もっと簡単なことがありますか?
あなたがよりよく理解するために、コメントコードを表示することができます。 – eyllanesc
古い翻訳者のリストを維持してください。あるいは、それを維持するためにいくつかの共通の親(それはいくつかのダミーの 'QObject'とすることができます)を使います。そのような場合は、それぞれの翻訳を削除することができます。私はそれが問題でなければならないとは思わない。 –
@MarekRそれはそうではありませんが、あなたがインストールした翻訳者をすでに知っているので、QAppがそれをやっていると便利です。翻訳者のリストをクリアして、翻訳者を1つずつ削除する必要はありません。 – ymoreau