我有一个称为日期的QDateEdit
。不管我做什么,我都不能用英语显示月份,它总是用我当前的语言环境显示月份。
我已经试过了:
self.ui.date.setLocale(QtCore.QLocale(
QtCore.QLocale.English, QtCore.QLocale.UnitedStates))
self.ui.date.calendarWidget().setLocale(QtCore.QLocale(
QtCore.QLocale.English, QtCore.QLocale.UnitedStates))
通过这样做,当我单击小部件时弹出的CalendarWidget变为English。但是,如果我这样做了:
print ui.date.date().toString("MMMM dd, yyyy")
我仍然用葡萄牙语而不是英语度过了几个月。我还尝试用python的locale模块更改语言环境,但没有得到任何结果。
最佳答案
使用QLocale.toString方法
例如:
print(QLocale(QLocale.English, QLocale.UnitedStates).toString(self.ui.date.date(), "MMMM dd, yyyy"))`
QDATE是日期的独立于区域的表示。格式化时需要指定区域设置…