美文网首页
GUI三种绑定方式

GUI三种绑定方式

作者: Chaweys | 来源:发表于2021-01-13 07:09 被阅读0次

组件对象的绑定 
1、 通过 command 属性绑定(适合简单不需获取 event 对象) 
   Button(root,text="登录",command=login) 
    
2、 通过 bind()方法绑定(适合需要获取 event 对象) 
   c1 = Canvas()
   c1.bind("<Button-1>",drawLine)
   

组件类的绑定
3、调用对象的 bind_class 函数,将该组件类所有的组件绑定事件: 
   w.bind_class("Widget","event",eventhanler)


#coding=utf-8
from tkinter import *

root=Tk()
root.title("三种绑定方式的使用")
root.geometry("300x50")

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

def mouseTest2(a,b):
    print("command方式绑定,不能直接获取event事件对象")
    print("{0}-{1}".format(a,b))

def mouseTest3(event):
    print("右键单击事件,绑定给所有按钮")
    print(event.widget)


#bind()方式绑定特定事件
b1=Button(root,text="button1")
b1.bind("<Button-1>",mouseTest1)
b1.pack(side="left")


#command属性直接绑定事件
b2=Button(root,text="button2",command=lambda :mouseTest2("Vince","Jenny"))
b2.pack(side="left")


#bind_class()方式绑定事件给所有同一类的组件,即给所有按钮绑定右键单击
#也是可以是b2.bind_class()
b1.bind_class("Button","<Button-3>",mouseTest3)

root.mainloop()
三种绑定事件方式.png

相关文章

网友评论

      本文标题:GUI三种绑定方式

      本文链接:https://www.haomeiwen.com/subject/bcclaktx.html