我在tkinker
中使用python
编写了一个脚本。当我运行脚本时,它会收到一个输入并将其打印到控制台。它工作得很好。
我想要做的是以这样的方式向现有脚本添加任何功能,以便在按下inputbox
按下get
按钮后,它将在控制台中打印该值并自动退出。我的现有脚本再一次能够打印值。我需要在打印完成后立即退出该按钮。对此的任何帮助将受到高度赞赏。
以下是我迄今为止所做的尝试:
from tkinter import *
master = Tk()
e = Entry(master)
e.pack()
e.focus_set()
callback = lambda : get_val(e.get())
get_val = lambda item: print(item) #this extra function is for further usage
Button(master, text="get", width=10, command=callback).pack()
master.mainloop()
这就是inputbox
的样子:
答案 0 :(得分:7)
将callback
功能修改为:
def callback():
get_val(e.get()) #Gets your stuff done
master.destroy() #Breaks the TK() main loop
exit() #Exits the python console
这里,
master.destroy()
打破master.mainloop()
循环,从而终止GUI,最后exit()
使其退出python控制台。
答案 1 :(得分:3)
维护lambda
语法:
callback = lambda : (print(e.get()), master.destroy())
关键是致电master.destroy()
。