python tkcalendar-日历下个月错误

时间:2018-06-28 00:37:33

标签: python python-3.x tkinter calendar locale

我创建了一个tkinter GUI,主窗口包含tkcalendar库中的Calendar窗口小部件,而寄存器Top Window之一包含Date Entry,它也属于同一库。当我使用日期输入打开我的注册窗口时会发生错误(我不需要在窗口上做任何事情,只需打开)。此后,当我尝试在主窗口上更改月份时,出现语言环境错误,并且“日历”不再起作用。我试图自己找到该错误,但我无法。我认为有些事情很重要:如果我不将语言环境更改为pt_BR,则这是我的语言,不会发生此错误。如果我不更改语言环境,则在打开注册窗口后,日历的月份语言会更改为我的pt-BR。

所以,我的问题是:

  • 我的代码是否存在引起错误的代码?
  • 是否有我可以解决的选择?而不只是不设置语言环境。

这是主窗口中的代码:https://pastebin.com/58v6UWP3

,然后在注册窗口中:https://pastebin.com/qYHdJPU7

提示上显示的错误是这样的:

Exception in Tkinter callback Traceback (most recent call last): File "C:\Users\Guilherme Afonso\AppData\Local\Programs\Python\Python36\lib\tkinter\__init__.py", line 1699, in __call__ return self.func(*args) File "C:\Users\Guilherme Afonso\AppData\Local\Programs\Python\Python36\lib\site-packages\tkcalendar.py", line 600, in _next_month self._display_calendar() File "C:\Users\Guilherme Afonso\AppData\Local\Programs\Python\Python36\lib\site-packages\tkcalendar.py", line 518, in _display_calendar header = self._cal.formatmonthname(year, month, 0, False) File "C:\Users\Guilherme Afonso\AppData\Local\Programs\Python\Python36\lib\calendar.py", line 529, in formatmonthname return s.center(width) File "C:\Users\Guilherme Afonso\AppData\Local\Programs\Python\Python36\lib\calendar.py", line 498, in __exit__ _locale.setlocale(_locale.LC_TIME, self.oldlocale) File "C:\Users\Guilherme Afonso\AppData\Local\Programs\Python\Python36\lib\locale.py", line 598, in setlocale return _setlocale(category, locale) locale.Error: unsupported locale setting

0 个答案:

没有答案