Python3.7 Win7操作系统下,打开TTK库的实例程序“everything_bagel.py”,发现运行报错,报错如下:
= RESTART: F:\python\tktest\ttkbootstrap-master\ttkbootstrap-master\gallery\everything_bagel.py
Traceback (most recent call last):
File "F:\python\tktest\ttkbootstrap-master\ttkbootstrap-master\gallery\everything_bagel.py", line 348, in <module>
bagel = setup_demo(app)
File "F:\python\tktest\ttkbootstrap-master\ttkbootstrap-master\gallery\everything_bagel.py", line 339, in setup_demo
de = ttk.DateEntry(input_group)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\ttkbootstrap\widgets.py", line 156, in __init__
self.entry.insert(tk.END, self._startdate.strftime(self._dateformat))
ValueError: embedded null byte
以前是可以正常运行的,分析后发现出错原因是更改了系统日期显示格式,将yyyy/M/d/dddd改回原来的yyyy/M/d,或者将C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\ttkbootstrap\widgets.py
文件中第99行dateformat=r"%x" ,改为:
dateformat=r"%Y/%m/%d",
就可以了。(行末逗号不要忘了)