当你点击不同的按钮时,两个条目打印相同的东西

2024-04-25 12:54:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我不太会用Tkinter,我试着去寻找答案,但是,我只是更加困惑了。每当我试图运行程序并按两个按钮打印出两个条目时,它只打印出第二个条目而忽略第一个条目。两个按钮中的每一个仍然附加在它们适当的列表中,但是,只需附加相同的内容,即第二个条目

import tkinter as tk

HEIGHT = 125
WIDTH = 600

the_text_holder = []
the_date_holder = []


def get_text(entry):
  the_text_holder.append(entry)
  print(the_text_holder)

def get_date(entry):
    the_date_holder.append(entry)
    print(the_date_holder)


root = tk.Tk()

canvas = tk.Canvas(root, height = HEIGHT, width = WIDTH)
canvas.pack()



frame = tk.Frame(root, bg= "#696969")
frame.place(relwidth = 1, relheight = 1)



label = tk.Label(frame,text= "Reminder", bg = "#696969", font = ("arial", 12))
label.place(relx = 0.05, rely = 0.01)

label = tk.Label(frame,text= "Enter reminder:", bg = "#21558c", font = ("arial", 12))
label.place(relx = 0.05, rely = 0.19)

label = tk.Label(frame,text= "Enter time:", bg = "#21558c", font = ("arial", 12))
label.place(relx = 0.05, rely = 0.37)



entry = tk.Entry(frame, bg = "white")
entry.place(relx = 0.3, rely=0.19, relwidth = 0.6)

entry = tk.Entry(frame, bg = "white")
entry.place(relx = 0.3, rely=0.37, relwidth = 0.6)



button = tk.Button(frame, text ="Set text",bg = "#8b0000", command = lambda: get_text(entry.get()))
button.place(relx = 0.91, rely = 0.15)

button = tk.Button(frame, text ="Set time",bg = "#8b0000", command = lambda: get_date(entry.get()))
button.place(relx = 0.91, rely = 0.37)


root.mainloop()

Tags: thetextgetdate条目placerootframe
1条回答
网友
1楼 · 发布于 2024-04-25 12:54:43

问题是,如果为entry赋值,则需要重命名第二个entry

请注意,对button也要这样做

reminder_entry = tk.Entry(frame, bg="white")
reminder_entry.place(relx=0.3, rely=0.19, relwidth=0.6)

time_entry = tk.Entry(frame, bg="white")
time_entry.place(relx=0.3, rely=0.37, relwidth=0.6)

button = tk.Button(frame, text="Set text", bg="#8b0000", command=lambda: get_text(reminder_entry.get()))
button.place(relx=0.91, rely=0.15)

button = tk.Button(frame, text="Set time", bg="#8b0000", command=lambda: get_date(time_entry.get()))
button.place(relx=0.91, rely=0.37)

root.mainloop()

相关问题 更多 >