python - 运行程序后使按钮消失

标签 python button python-2.7 tkinter

我有一个 Tkinter 窗口,目前有 18 个按钮,它们都有相同的代码:

    Button2=Button(master,text='click me',command=lambda:callback())
    Button2.grid(row=1,column=2)

当我执行此代码时,它会运行该过程

callback 

但我希望它运行该程序然后消失;我已经尝试过了

def hide_me(event):
event.widget.grid_forget()

Button2=Button(master,text='click me',command=lambda:callback())
Button2.bind('<Button-1>',hide_me) 
Button2.grid(row=1,column=2)

但是当我按下按钮时,它会使按钮消失而不执行回调,当我尝试时:

def callback(Buttons):

   C = Characters.pop(0)
   Buttons.bind('<Button-1>',hide_me())
   return C()


Button2=Button(master,text='click me',command=lambda:callback(Button2))
Button2.bind('<Button-1>',hide_me) 
Button2.grid(row=1,column=2)

它运行回调,但按钮不会消失。谁能告诉我我做错了什么?

最佳答案

如果您已经使用了 command 关键字参数,则不应调用 bind

只需将 callback()grid_forget() 封装到一个方法中即可:

def callback_and_hide(button):
    callback()
    button.grid_forget()

Button2 = Button(master,text='click me',command=lambda: callback_and_hide(Button2))

关于python - 运行程序后使按钮消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13055727/

相关文章:

python - 使用Elmer生成C代码然后创建dll

python - 如何安装 plaidML/plaidML-keras

javascript - 获取网页的所有按钮并在Javascript中删除具有特定背景图像的按钮

带按钮的 Android ExpandableListView 父级

python - 使用其他列的索引对 DataFrame 进行切片

python - `try ... except not` 施工

python - 任何人都可以逐步解释以下堆栈跟踪吗?

python - 导入错误 : No module named _imagingtk

JAVA 按钮对齐

python-2.7 - 使用Dockerfile和centos找不到make :7 image