要在使用tkinter时删除按钮,我知道我应该使用grid_remove
。命令应该放在哪里,删除它的行代码是什么样的?
这是我创建按钮的地方。
self.button1 = Tkinter.Button(self, text=u"Convert Decimal to Binary", command=lambda: self.OnButtonClick(1))
self.button1.grid(column=1,row=1)
然后这是我创建的函数,用于确定单击了哪个按钮,因为我在另一个按钮下方点击了该按钮。
def OnButtonClick(self, button_id):
if button_id == 1:
self.entryVariable = Tkinter.StringVar()
self.entry = Tkinter.Entry(self,textvariable=self.entryVariable)
self.entry.grid(column=1,row=0,sticky='EW')
self.entryVariable.set(u"Enter Decimal Number Here")
我将grid_remove
放在何处以摆脱按钮,删除它的代码行是什么样的?我会假设这样的事情:
self.button1 = Tkinter.Button(self, text=u"Convert Decimal to Binary", command=lambda: self.grid_remove(1))
但我不太确定
答案 0 :(得分:1)
您可以像这样调用grid_remove
self.button1
方法:
self.button1.grid_remove()
下面是一个示例脚本:
from Tkinter import Tk, Button
root = Tk()
def click():
button.grid_remove()
button = Button(text="click", command=click)
button.grid()
root.mainloop()
至于放置该线的位置,由您决定。它可以在OnButtonClick
内,在另一种方法内等。基本上,将它放在您想要移除的self.button1
的任何位置。
我认为它在OnButtonClick
内,在这种情况下代码看起来像这样:
def OnButtonClick(self, button_id):
if button_id == 1:
self.entryVariable = Tkinter.StringVar()
self.entry = Tkinter.Entry(self,textvariable=self.entryVariable)
self.entry.grid(column=1,row=0,sticky='EW')
self.entryVariable.set(u"Enter Decimal Number Here")
self.button1.grid_remove() # Remove the button