1

Python3、PyQt4 和国际化。

我想将一些包含非 ASCII 字符的字符串传递给tr()PyQt 的方法,但出现以下错误:

>>> from PyQt4.QtGui import QDialog
>>> from PyQt4.QtCore import QObject
>>> QDialog.tr(QObject(), 'abc')
'abc'
>>> QDialog.tr(QObject(), 'abcγδε')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: function takes exactly 5 arguments (1 given)
>>> 

我怎样才能解决这个问题?

4

1 回答 1

1

您需要使用trUtf8()tr()用于 ASCII 字符串。(它的签名是const char * sourceText, ...

QDialog.trUtf8(QObject(), 'abcγδε')
于 2013-09-11T05:51:06.457 回答