繁体   English   中英

Python将Tkinter按钮的实例传递到其自己的命令中

[英]Python passing an instance of a Tkinter button into its own command

我试图弄清楚如何将按钮实例传递到它自己的命令中。 本质上,我想做的是如果被调用命令的事件成功完成,那么我想禁用该按钮。

这是我的按钮代码,它调用一个名为“ runco​​mmand”的函数:

btn_id = Button(tab_id, text=label, anchor=W)
btn_id.configure(command=lambda command=command, logtext=logtext, btn_id=btn_id: runcommand(command, logtext, btn_id))

一旦被调用,如果满足条件,我将尝试在“ runco​​mmand”功能中将其禁用:

btn_id.configure(state=DISABLED)

我不确定这是否可行,或者我只是以错误的方式进行操作。

您已经传递了对该按钮的引用,因此

def runcommand(command, text, btn_id):
    ...
    if (should_disable_the_button):
        btn_id.configure(state=DISABLED)

好吧,这是我完全承认自己是笨蛋的地方。 我正确实现了该功能。 我在runco​​mmand函数中有一系列复杂的'if'条件,并且没有调用禁用代码。 我指定了一个布尔标志来确定是否应该立即禁用按钮。 工作正常。 杜... MASS!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM