【发布时间】:2020-11-07 14:41:37
【问题描述】:
我正在尝试在 Python 中使用 Tkinter 创建反馈表单。现在,如果单击提交按钮时名称条目为“”,我正在写它以显示一个消息框。但是该按钮无法单击并被禁用。我该如何解决这个问题?
# import all functions from the tkinter
from tkinter import *
from tkinter import messagebox
# import messagebox class from tkinter
from tkinter import messagebox
# Create a GUI window
root = Tk()
# create a function to check input
def check_input():
if name_input == '':
messagebox.showerror("please enter your name")
# create the input entry
name_input = Entry(root)
age_input = Entry(root)
phone_input = Entry(root)
email_input = Entry(root)
# label the input entry
name_label = Label(text="Username")
age_label = Label(text="Age")
phone_label = Label(text="Phone")
email_label = Label(text="Email")
# display the input entry
name_label.grid(row = 1,column = 1, padx = 10)
name_input.grid(row = 2,column = 1,padx = 10)
age_label.grid(row = 3,column = 1,padx = 10)
age_input.grid(row = 4,column = 1,padx = 10)
phone_label.grid(row = 5,column = 1,padx = 10)
phone_input.grid(row = 6,column = 1,padx = 10)
email_label.grid(row = 7,column = 1,padx = 10)
email_input.grid(row = 8,column = 1,padx = 10)
# create the submit button
submit_button = Button(root,text="Submit",command = check_input)
# display the submit button
submit_button.grid(row = 9,column = 1,padx = 10)
# Start the GUI
root.mainloop()
【问题讨论】:
-
按钮何时被禁用?对我来说,一切正常
-
当您说“无法点击”时,您的意思是它什么都不做吗?
name_input是一个 Tkentry对象,因此它永远不会等于空字符串,因此该命令将永远不会在编写时执行任何操作。
标签: python oop user-interface button tkinter