0

Subj:それは可能ですか?たとえば、QtGui.QFileDialog().getSaveFileName()「保存」ボタンを「保存」に、「キャンセル」を「無知」に変換できますか?QFileDialog/QFontDialog速度を発明せずにに基づいてクラスを作成することは可能ですか?OSシステムのロケールに応じて、これらの関数は常に変換されると誰かが言った。信じないでください、私のロシア語版のOpenSUSEは、それは嘘だと言っています。:-)そしてロシアのWindows7はそのような振る舞いをしています。私のシステムに表示される文字列はすべて英語です。私は民族主義者ではありませんが、他の言語の文字列を使用したいと思います。:-) ありがとう!

4

2 に答える 2

2

標準の Qt インストールには、Qt ライブラリ自体の翻訳ファイルが 20 個ほど含まれているはずです。

それらの使用方法の説明は、Qt i18n ドキュメントのこのセクションにあります。

基本的な PyQt4 の例を次に示します。

from PyQt4 import QtGui, QtCore

class Window(QtGui.QWidget):
    def __init__(self):
        QtGui.QWidget.__init__(self)
        self.buttons = QtGui.QDialogButtonBox(self)
        button = self.buttons.addButton(QtGui.QDialogButtonBox.Open)
        button.clicked.connect(self.handleOpen)
        button = self.buttons.addButton(QtGui.QDialogButtonBox.Close)
        button.clicked.connect(self.close)
        layout = QtGui.QVBoxLayout(self)
        layout.addWidget(self.buttons)

    def handleOpen(self):
        dialog = QtGui.QFileDialog()
        dialog.exec_()

if __name__ == '__main__':

    import sys
    app = QtGui.QApplication(sys.argv)
    translator = QtCore.QTranslator()
    if len(sys.argv) > 1:
        locale = sys.argv[1]
    else:
        locale = QtCore.QLocale.system().name()
    translator.load('qt_%s' % locale,
        QtCore.QLibraryInfo.location(QtCore.QLibraryInfo.TranslationsPath))
    app.installTranslator(translator)
    window = Window()
    window.show()
    sys.exit(app.exec_())
于 2012-02-03T18:06:52.467 に答える
0

私はすでに解決策を見つけました:qmファイル。を使用して、 tsファイルから取得できますlrelease

于 2012-02-03T17:10:58.217 に答える