2016-04-04 10 views
0

私はQUILoaderを使用して、.proプロジェクトファイルにリストされていない.uiファイルを動的に読み込みます。Qt翻訳で問題が発生しました。

これまでのところとても良いです。問題はlupdateが.proファイルの下に表示されているものだけを翻訳することです。私は、次のコマンドでそれを実行している:

lupdate project.pro -ts tr_language.ts 

だから私は.uiファイル内のすべてのテキストが欠落しています。

私は、次のコマンドをプッシュする場合LUPDATEはwidget.uiを翻訳することができます発見するために管理:

lupdate widget.ui -ts tr_language.ts 

私は.uiものが翻訳され得ることができそう。

問題が何ですか?お互いを上書きするので、上記のアプローチのうちの1つしか実行できません。

この問題のスマートなアプローチはありますか?

答えて

1

この問題にはよりスマートなアプローチがありますか?

シンプル:ファイルを上書きしないでください。

lupdate widget.ui -ts tr_widget_language.ts 

または他の名前を使用してください。 この方法では、お互いを上書きしない2つのファイルがあります。

あなたが使用できることをした後:

lrelease [options] ts-files [-qm qm-file] 

これは、引数として、TS-ファイルに言及しています。これにより、複数の* .tsファイルを1つの* .qmファイルにコンパイルできるはずです。

そうしないと、アプリケーションに2番目の* .qmファイルをロードする必要があります。

+1

すべての* .uiファイルのすべての情報を含む* .tsファイルを1つ追加することができます。これにより、アプリケーションでロードする必要のある* .qmファイルが1つ追加されます。 – Mailerdaimon

+0

または、すべての* .tsファイルを1つの* .qmファイルにバンドルします。 lReleaseのドキュメントを見てください:http://doc.qt.io/qt-4.8/linguist-manager.html – Mailerdaimon

+0

おっと...私は以前のコメントを削除しましたが、あなたのコメントは書いていませんでした。私は両方の.tsをインストールすることができました。しかし、すべての.tsを1つの.qmにバンドルする方法についてのアイデアはありませんでした(Ctrl + fの "bundle"はドキュメントリンクに何も表示されません)。 – KcFnMi

関連する問題