python - Tkinter Checkbutton 和事件回调函数

标签 python events tkinter

这是我在 Effbot 网站上找到的一个小代码示例,它与我想在我的一个程序中执行的操作很接近:

from Tkinter import *

fen =Tk()

class test_Tk_class:
    def __init__(self):
        self.var = IntVar()
        c = Checkbutton(
            fen, text="Enable Tab",
            variable=self.var,
            command=self.cb)
        c.pack()

    def cb(self,event):
        print "variable is", self.var.get()

    a = test_Tk_class()
    fen.mainloop()

但是这段代码不起作用。回调函数 cb 不起作用,因为它有 2 个参数但没有给出。如何指定 event 参数?

最佳答案

在这种情况下,这段代码根本不需要event。我通过完全删除它来让它工作:

def cb(self):
    print "variable is", self.var.get()

只有在将函数绑定(bind)到按键或鼠标点击时,您才会以这种方式构建代码。但是,对于选中/取消选中复选按钮,则不需要。

我不知道在 Effbot 上编写此代码的人想做什么,但我认为他做的不对。也许他打错了字或另有想法。

关于python - Tkinter Checkbutton 和事件回调函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19163658/

相关文章:

python - 使用python减少for循环中的行数

python - Gmail API python 实现

javascript - jQuery 触发更改事件不起作用

javascript - 启用 contentEditable 或 designMode 的拖放和粘贴检测

python - 使用 matplotlib 清除 Tkinter Canvas 小部件的问题

c++ - 从 std::function 创建一个 boost::python::object

python - 将QMessageBox系统图标添加到QDialog中

c++ - 将单个事件连接到 wxWidgets 中的特定方法

python - 如何从 Tkinter Text Widget 获取输入?

python - Tkinter,透明背景,Linux