加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

使用PyQt4进行国际化的最佳实践

发布时间:2020-12-20 13:25:22 所属栏目:Python 来源:网络整理
导读:我想为我的应用程序添加多语言支持,这是使用PyQt4用 Python编写的.我一直在寻找有关如何添加多种语言的信息,并希望了解其他人如何做到这一点. Here我看了: The PyQt behaviour is unsatisfactory and may be changed in the future. It is recommended that
我想为我的应用程序添加多语言支持,这是使用PyQt4用 Python编写的.我一直在寻找有关如何添加多种语言的信息,并希望了解其他人如何做到这一点.

Here我看了:

The PyQt behaviour is unsatisfactory and may be changed in the future.
It is recommended that QCoreApplication.translate() be used in
preference to tr() (and trUtf8()). This is guaranteed to work with
current and future versions of PyQt and makes it much easier to share
message files between Python and C++ code.

在pyuic4生成的文件中,我看到如下内容:

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

这对我来说太长了.我正在考虑制作自己的tr辅助函数,以某种方式自动化该过程.

此外,我找不到描述工作流程的文章和使用pyqt4在python中开发多语言应用程序的细节.

你能用一些好的方便的技巧给我建议吗?

解决方法

只需在每个地方使用tr(或trUtf8)即可.只有当您识别出受多重继承问题影响的代码时,才能轻松使用翻译(这很容易就永远不会).

我建议你看一下Qt的i18n overview和Qt Linguist Manual.它们显然都面向C项目,但它应该让你清楚地知道需要什么.

对于一个工作示例,您还可以下载Eric Python IDE的源代码 – 它是用PyQt4编写的,并且支持六种或更多种语言.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读