如何在 tkinter 中使用日历模块?
How to use the calendar module with tkinter?
将 calendar
模块与 tkinter
一起使用,如果一周不是从星期一开始,最后一行总是有一个位移。有谁知道为什么会这样?
import calendar
from tkinter import *
gui = Tk()
gui.title("Calendar")
def cal():
y = e1.get()
m = e2.get()
cal_x = calendar.month(int(y),int(m),w = 2, l = 1)
print (cal_x)
cal_out = Label(gui, text=cal_x, font=('courier', 12, 'bold'), bg='lightblue')
cal_out.pack(padx=3, pady=10)
label1 = Label(gui, text="Year:")
label1.pack()
e1 = Entry(gui)
e1.pack()
label2 = Label(gui, text="Month:")
label2.pack()
e2 = Entry(gui)
e2.pack()
button = Button(gui, text="Show",command=cal)
button.pack()
gui.mainloop()
您只需将 Label
中的文本左对齐:
cal_out = Label(
gui,
bg='lightblue',
font=('courier', 12, 'bold'),
justify=LEFT, # like this
text=cal_x,
)
这个月,这给了我:
tkinter
默认情况下会 CENTER
-justify,这在这种情况下看起来很奇怪; calendar
只是 returns 文本,所以你不能真的把它归咎于那个模块!
将 calendar
模块与 tkinter
一起使用,如果一周不是从星期一开始,最后一行总是有一个位移。有谁知道为什么会这样?
import calendar
from tkinter import *
gui = Tk()
gui.title("Calendar")
def cal():
y = e1.get()
m = e2.get()
cal_x = calendar.month(int(y),int(m),w = 2, l = 1)
print (cal_x)
cal_out = Label(gui, text=cal_x, font=('courier', 12, 'bold'), bg='lightblue')
cal_out.pack(padx=3, pady=10)
label1 = Label(gui, text="Year:")
label1.pack()
e1 = Entry(gui)
e1.pack()
label2 = Label(gui, text="Month:")
label2.pack()
e2 = Entry(gui)
e2.pack()
button = Button(gui, text="Show",command=cal)
button.pack()
gui.mainloop()
您只需将 Label
中的文本左对齐:
cal_out = Label(
gui,
bg='lightblue',
font=('courier', 12, 'bold'),
justify=LEFT, # like this
text=cal_x,
)
这个月,这给了我:
tkinter
默认情况下会 CENTER
-justify,这在这种情况下看起来很奇怪; calendar
只是 returns 文本,所以你不能真的把它归咎于那个模块!