2011-11-13 10 views
4

PyQt4を使用してPythonで書かれたアプリケーションに複数の言語サポートを追加したいと思います。私は複数の言語を追加する方法に関する情報を探していて、他の人がこれをどうやって行うのか見たいと思っています。PyQt4を使用した国際化のベストプラクティス

Hereは私が読んで:

のPyQtの動作が不十分であると、将来的に変更することがあります。 QCoreApplication.translate()は、 tr()(およびtrUtf8())に優先して使用することをお勧めします。これは、 のPyQtの現在および将来のバージョンで動作することが保証されており、メッセージファイルをPythonとC++コードの間で共有する方がはるかに簡単です。これは私にとってあまりにも長い間探します

WPopupCalendar.setWindowTitle(QtGui.QApplication.translate("WPopupCalendar", "Календарь", None, QtGui.QApplication.UnicodeUTF8)) 

pyuic4によって生成されたファイルで

は、私のようなものを参照してください。私は何とかプロセスを自動化する私自身のtrヘルパー機能を作ろうと考えていました。

また、pyqt4を使用して多言語アプリケーションを開発するためのワークフローと仕様についての記事も見つかりませんでした。

これについていくつかの便利で便利なテクニックを教えてください。

答えて

1

どこからでもtr(またはtrUtf8)を使用してください。複数の継承に関する問題の影響を受けるコードを特定すると(これは決して簡単ではない可能性があります)、translateのみに気をつけてください。

Qtのi18n overviewQt Linguist Manualをご覧になることをお勧めします。明らかに両方ともC++プロジェクトを指向していますが、必要なことを明確に理解しておく必要があります。

Eric Python IDEのソースコードをダウンロードすることもできます。PyQt4で書かれており、半ダース以上の言語をサポートしています。