tkinter事件绑定方法总结

1. 方法总结

tkinter中事件绑定方法可以分为两大类:

  1. 组件对象的绑定,包含2种方法:
    • 通过command属性绑定,适合简单不需要获取event对象的情况,
      例如:Button(root,text="登录",command=login);
    • 通过bind()方法绑定,适合需要获取event对象的情况,
      例如:l=Label(text="A"); l.bind("<Button-1>",sendMessage);
  2. 组件类的绑定:通过调用对象的bind_class函数,将该组件类所有的组件绑定事件,
    例如btn.bind_class("<Button-1>",func)

2. 示例代码

from tkinter import *


def mouse_test01(name, sex):
    print("command方式绑定,不能直接获取event对象,可以接受参数")
    print("name:{},b:{}".format(name, sex))
    print("====================")


def mouse_test02(event):
    print("bind()方式绑定,可以获取event对象")
    print(event.widget)
    print("====================")


def mouse_test03(event):
    print("bind_class方式绑定所有类,可以获取event对象")
    print(event.widget)
    print("====================")


if __name__ == '__main__':
    root = Tk()
    btn01 = Button(root, text="command方式绑定", command=lambda: mouse_test01("sz", "male"))
    btn01.pack()

    btn02 = Button(root, text="bind()方式绑定")
    btn02.bind("<Button-1>", mouse_test02)
    btn02.pack()

    # 给所有按键添加右键事件
    btn01.bind_class("Button", "<Button-3>", mouse_test03)
    root.mainloop()

  • 运行结果:
    在这里插入图片描述
    单击command方式测试按钮:
    在这里插入图片描述
    单击bind()方式测试按钮:
    在这里插入图片描述
    右击任意一个按钮:
    在这里插入图片描述

注意:

  • 2
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值