在Python和pyqt中显示Shamsi(Jalali)的QCalendarWidget

时间:2015-12-03 06:29:31

标签: python qt pyqt

我想知道波斯语显示的QCalendarWidget(pyqt和python)我该怎么办?
或者除英语之外的任何其他语言(例如波斯语,阿拉伯语,俄语等)
感谢

3 个答案:

答案 0 :(得分:1)

您可以使用QCalenderWidget

local属性中的语言更改为Persian,从而更改Qt中的语言显示

enter image description here

<强>输出:

enter image description here

修改

如果您想要使用Jalali和Hijri支持以及波斯语翻译的日历,那么您必须安装StarCalender包并使用其库进行此类操作。

这里的源码为link以及

答案 1 :(得分:0)

cal = QtGui.QCalendarWidget()
cal.setLocale(QtCore.QLocale.Persian)

答案 2 :(得分:0)

简答

你做不到。 (尚)

长答案

Qt does not support calendars。有一个work-in-progress(代码可用here)在QtWidgets和QtQuick模块中为Qt添加非Gregorian日历支持。如果一切顺利,补丁将合并到Qt 5.11。它现在足够稳定了,所以你可以将它应用到Qt 5.10源码,你应该没问题。

免责声明:我不知道可能的许可问题(如果您对Qt进行了更改,则可能需要发布源代码[?])。

重要提示:

日历和区域设置是分离且不相关的概念。这个动画gif应该详细说明(这是我们对Qt提出的改变的早期测试):

Image