当我按下按钮时,我希望它能够获得Entry
并且 - 以后 - 在另一个功能中使用它。
import tkinter
def ButtonAction():
MyEntry = ent.get() #this is the variable I wanna use in another function
den = tkinter.Tk()
den.title("Widget Example")
lbl = tkinter.Label(den, text="Write Something")
ent = tkinter.Entry(den)
btn = tkinter.Button(den, text="Get That Something", command = ButtonAction )
lbl.pack()
ent.pack()
btn.pack()
den.mainloop()
print MyEntry #something like this maybe. That's for just example
我会将此内容用作搜索工具。将出现输入窗口,从那里获取“输入”并在以下文件中搜索:
if MyEntry in files:
#do smth
我知道我可以使用全局变量处理问题,但从我读过的内容来看,它不建议作为第一个解决方案。
答案 0 :(得分:2)
使用类构建程序。
import tkinter
class Prompt:
def button_action(self):
self.my_entry = self.ent.get() #this is the variable I wanna use in another function
def __init__(self, den):
self.lbl = tkinter.Label(den, text="Write Something")
self.ent = tkinter.Entry(den)
self.btn = tkinter.Button(den, text="Get That Something", command=self.button_action)
self.lbl.pack()
self.ent.pack()
self.btn.pack()
den = tkinter.Tk()
den.title("Widget Example")
prompt = Prompt(den)
den.mainloop()
您可以稍后使用prompt.my_entry
访问输入。