Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python tkcalendar是否可以显示多个日期输入小部件?_Python_Tkinter_Tkcalendar - Fatal编程技术网

Python tkcalendar是否可以显示多个日期输入小部件?

Python tkcalendar是否可以显示多个日期输入小部件?,python,tkinter,tkcalendar,Python,Tkinter,Tkcalendar,我正在开发一个数据库条目应用程序,并在使用Python 3.8的GUI中使用tkinter和tkcalendar。我在下面编写了一段代码,演示了在同一窗口中初始化两个DateEntry小部件时看到的错误 import tkinter as tk import tkcalendar as tkdate class root(tk.Tk): def __init__(self, *args, **kwargs): tk.Tk.__init__(self, *args,

我正在开发一个数据库条目应用程序,并在使用Python 3.8的GUI中使用tkinter和tkcalendar。我在下面编写了一段代码,演示了在同一窗口中初始化两个DateEntry小部件时看到的错误

import tkinter as tk
import tkcalendar as tkdate

class root(tk.Tk):

    def __init__(self, *args, **kwargs):

        tk.Tk.__init__(self, *args, **kwargs)
        container = tk.Frame(self)
        container.grid(row=0, column=0)

        self.DE1 = tkdate.DateEntry(self)
        self.DE1.grid(row=1, column=0)

        self.DE2 = tkdate.DateEntry(self)
        self.DE2.grid(row=2, column=0)


app = root()
app.mainloop()
回溯似乎没有提供太多信息,但我会将其粘贴在这里;请注意,正在创建的DateEntry小部件的多个实例似乎导致退出代码1:

Traceback (most recent call last):
  File "C:/Users/pmo/.PyCharmCE2019.3/config/scratches/scratch_1.py", line 19, in <module>
    app = root()
  File "C:/Users/pmo/.PyCharmCE2019.3/config/scratches/scratch_1.py", line 15, in __init__
    self.DE2 = tkdate.DateEntry(self)
  File "C:\Users\pmo\AppData\Local\Programs\Python\Python38-32\lib\site-packages\tkcalendar\dateentry.py", line 105, in __init__
    self._setup_style()
  File "C:\Users\pmo\AppData\Local\Programs\Python\Python38-32\lib\site-packages\tkcalendar\dateentry.py", line 160, in _setup_style
    self.style.map('DateEntry', **maps)
  File "C:\Users\pmo\AppData\Local\Programs\Python\Python38-32\lib\tkinter\ttk.py", line 403, in map
    self.tk.call(self._name, "map", style, *_format_mapdict(kw)),
_tkinter.TclError: Invalid state name r

Process finished with exit code 1
回溯(最近一次呼叫最后一次):
文件“C:/Users/pmo/.PyCharmCE2019.3/config/scratch/scratch_1.py”,第19行,在
app=root()
文件“C:/Users/pmo/.PyCharmCE2019.3/config/scratch/scratch_1.py”,第15行,在__init中__
self.DE2=tkdate.DateEntry(self)
文件“C:\Users\pmo\AppData\Local\Programs\Python\Python38-32\lib\site packages\tkcalendar\dateentry.py”,第105行,在uu init中__
self.\u设置\u样式()
文件“C:\Users\pmo\AppData\Local\Programs\Python\Python38-32\lib\site packages\tkcalendar\dateentry.py”,第160行,格式为“安装”
self.style.map('DateEntry',**map)
映射中第403行的文件“C:\Users\pmo\AppData\Local\Programs\Python38-32\lib\tkinter\ttk.py”
self.tk.call(self.\u name,“map”,style,*\u格式\u mapdict(kw)),
_tkinter.TclError:无效的状态名称r
进程已完成,退出代码为1
奇怪的是,我可以毫无问题地放置两个日历小部件,但是当尝试使用两个或更多的DateEntry小部件时,整个应用程序都失败了。我已经在网上查过了,但是没有看到其他人在使用tkcalendar时遇到过这个问题。有没有人知道如何解释这个错误,或者更确切地说,知道如何解决这个问题


谢谢

根据jasonharper的回答和链接:

当使用此工具更新库时,创建者在此处发布的修复似乎解决了问题(如果对任何人有用,我使用的是Windows 10、x64):


希望它能被推入主图书馆

根据jasonharper的回答和链接:

当使用此工具更新库时,创建者在此处发布的修复似乎解决了问题(如果对任何人有用,我使用的是Windows 10、x64):


希望它能被推入主图书馆

tkcalendar和Python 3.8的已知问题。有关详细信息,请参阅。tkcalendar和Python 3.8的已知问题。有关详细信息,请参阅。