我使用tkinter从用户那里获取实时输入。根据是/否,将要求用户从日期选择器中选择日期。一旦选择了日期,程序将把日期分配给全局变量todays\u date,yesterdays\u date。
这里的问题是它没有进一步移动到下一行代码“print('final status')”。你能告诉我我错过了什么吗?
代码如下:
import tkinter as tk
from tkcalendar import Calendar
from datetime import datetime, timedelta
def invoke_date(Var1,root):
root.withdraw()
root.quit()
global todays_date, yesterdays_date
if Var1.get() == 2:
def cal_done():
top.withdraw()
root_date.quit()
root_date = tk.Tk()
root_date.withdraw()
top = tk.Toplevel(root_date)
cal = Calendar(top, font="Arial 14", selectmode='day', cursor="hand1")
cal.pack(fill="both", expand=True)
tk.Button(top, text="OK", command=cal_done).pack()
root_date.mainloop()
todays_date = cal.selection_get()
yesterdays_date = todays_date - timedelta(days = 1)
else:
todays_date = datetime.now()
yesterdays_date = datetime.now() - timedelta(days = 1)
root = tk.Tk()
root.title("Report Dialog Box")
tk.Label(root, text="Do you want to run the report for today's date?:",justify = tk.LEFT,padx = 20).pack()
Var1 = tk.IntVar()
tk.Radiobutton(root, text = "Yes", padx = 20,variable = Var1,value = 1).pack(anchor=tk.W)
tk.Radiobutton(root, text = "No", padx = 20,variable = Var1,value = 2).pack(anchor=tk.W)
tk.Button(root, text = "Submit", command = lambda: invoke_date(Var1,root)).pack()
root.mainloop()
print('final status')
暂无答案!
目前还没有任何答案,快来回答吧!