[英]How can I make my button in Python Tkinter clickable?
我正在尝试使用 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()
您必须使用get()
方法从条目中获取内容:
# create a function to check input
def check_input():
if name_input.get() == '':
messagebox.showerror("please enter your name")
[![测试显示没有错误][1]][1]
你的按钮是可点击的并且是可见的......你的要求可能还有其他问题但按钮有效[1]: https://i.stack.imgur.com/JQqH3.png
如果您想从文本框中获取值,则需要为条目设置文本变量,例如
ttk.Entry(win,textvariable=hexanum).grid(column=1,row=0)
那么如果你需要从文本框中获取值,你会做类似的事情
inhexa=(hexanum.get()) #hexanum is the textvariable associated to entry/textbox
#inhexa is a variable in which the value from get function is stored (if need to store)
做你的功课:)随时问
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.