【发布时间】:2019-02-02 21:26:26
【问题描述】:
我想为桌面应用程序创建 Python GUI。我用 Tkinter 设计了这个:
两个按钮用于执行命令和退出应用程序,Button one 是继续执行代码,Button two 是退出。但 GUI 没有响应。
在执行进程时按下button two不会退出应用程序,按下button 1不会触发函数def clicked()中的代码。
有没有更好的方法可以在程序运行时退出(比如中断?)
在 Tkinter 中,我们可以在不按下按钮的情况下传递值。 (过程正在重复,但我只需要按一个按钮,需要在显示 GUI 时自动执行)
def GUI():
window =Tk()
window.title("Select First Color")
selected = IntVar()
rad1 = Radiobutton(window, text='RED', value=1, variable=selected)
rad2 = Radiobutton(window, text='YELLOW', value=2, variable=selected)
def clicked():
# Go to a function according to the selection of radio button
button1 = Button(window, text="Select", command=clicked)
button2 = Button(window, text="Quit", command=window.destroy)
rad1.grid(column=0, row=0) # GUI RadioButton Placement
rad2.grid(column=1, row=0)
button1.grid(column=6, row=0) # GUI Button Placement
button2.grid(column=6, row=1)
window.mainloop()
【问题讨论】:
-
问题不清楚。能说清楚点吗?
-
这用于图像处理。当从单选按钮中选择红色时,它将仅检测红色区域,而黄色仅检测黄色区域。但是当进程在
def Clicked():最后很难退出(没有响应)时,如果系统检测到区域超过一定值,则应根据选择的单选按钮重复处理 -
如果程序没有响应,您不能使用 tkinter GUI 退出它,即 GUI 中的按钮。因为那也将无响应。您必须在终端中通过 Ctrl + C 或 Ctrl + Z 将其关闭。如果你只想用一个按钮关闭程序。您可以将退出按钮的命令更改为
sys.exit。也别忘了import sys
标签: python user-interface button tkinter