Python Tkinter在两个按钮之间切换

时间:2018-04-14 21:17:50

标签: python python-3.x user-interface button tkinter

我试图用tkinter在两个按钮之间切换。

我有两个触发功能的按钮。使用changeOne只想显示ModusAButton并删除ModusBButton。与changeTwo相反。

我收到此错误消息:_tkinter.TclError: bad window path name ".!button2"

这是正确的方法吗?

ModusAButton = Button(root, text="ModusA")
ModusBButton = Button(root, text="ModusB")

def changeOne():
    ModusAButton.grid(row=1,column=0,sticky=W, padx=10,pady=10)
    ModusBButton.destroy()

def changeTwo():
    ModusBButton.grid(row=1,column=1,sticky=W, padx=10,pady=10)
    ModusAButton.destroy()

ChangeOneButton = Button(root, text="ChangeOne",command=changeOne)
ChangeOneButton.grid(row=0,column=0,sticky=W, padx=10,pady=10)

ChangeTwoButton = Button(root, text="ChangeTwo",command=changeTwo)
ChangeTwoButton.grid(row=0,column=1,sticky=W, padx=10,pady=10)

1 个答案:

答案 0 :(得分:2)

.destroy()完全摆脱按钮。要仅暂时删除它,请使用grid_forget()

def changeOne():
    ModusAButton.grid(row=1,column=0,sticky=W, padx=10,pady=10)
    ModusBButton.grid_forget()

def changeTwo():
    ModusBButton.grid(row=1,column=1,sticky=W, padx=10,pady=10)
    ModusAButton.grid_forget()