QTranslator如何处理区域设置修饰符PyQT?

2024-09-30 03:26:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我在使用QTranslator加载翻译文件时遇到问题,因为其中包含区域设置修饰符。我使用的代码是

from PyQt4 import QtCore, QtGui
from locale import getdefaultlocale

locale = getdefaultlocale()

app = QtGui.QApplication(sys.argv)

translator = QtCore.QTranslator(app)
translator.load('/usr/share/my_application/tr/qt_%s.qm' % locale[0])
app.installTranslator(translator)

除了包含修饰符(例如sr_RS@latin.UTF-8)的语言环境外,这段代码几乎适用于所有的语言环境。在这种情况下,它不会加载翻译文件,而不管它的名称是什么。在

我似乎不知道该如何命名翻译文件,或者需要实现哪些新代码才能使该代码正常工作。在

先谢谢你,乔希


Tags: 文件代码fromimport语言app区域环境
1条回答
网友
1楼 · 发布于 2024-09-30 03:26:22

区域设置名称的格式通常为:

    language[_territory][.codeset][@modifier]

但最后两个元素的顺序可能会有所不同。在

从Qt转换器文件的角度来看,很难看出最后两个组件有什么关联。因此,最明显的做法就是把它们剪掉,只使用语言和领土。在

最简单的方法是使用QLocale

^{pr2}$

相关问题 更多 >

    热门问题