python-tkinter,tkinter事件列表
本文主要介绍python_tkinter事件的细节。文章基于python_tkinter事件相关数据分享,包含事件绑定函数、事件对象等相关自身数据,可以参考一下朋友。
00-1010 1.事件绑定功能2。事件类型3。事件对象
目录
事件绑定函数有三个如下:
组件.bind(“事件类型”,事件功能)
将操作绑定到组件。
组件.bind_class(组件类型,事件类型,事件功能)
将操作绑定到类组件
组件.bind_all(“事件类型”,事件功能)
为所有组件绑定一个操作(所有操作将被视为主界面上的操作)
1.事件绑定函数
2.事件类型
事件绑定的案例1:
鼠标进入组件变红,离开组件变白:
#单行文本输入框
entry=tkinter。条目(根)
entry.pack()
#事件功能
def changered(eventobj):
#通过事件对象获取组件。
Evenj.widget [bg]= red #鼠标进入组件,变成红色。
def wdc(事件对象):
Evenj.widget [bg]= white #鼠标离开组件时变成白色。
#事件绑定
entry.bind(Enter ,changered)
entry.bind(Leave ,wdc)
通过注意:绑定函数操作,相应的事件函数必须接受带有可见参数的事件对象。
事件必须在绑定前定义。
事件绑定的案例2:
按键盘快捷键触发事件:改变窗口的背景颜色。
导入tkinter
#创建主窗口
root=tkinter。Tk()
#设置窗口大小
root.minsize(300,200)
#变红
定义改变器(事件对象):
eventobj.widget[bg]=red
#按Ctrl r将窗口变为红色。两个命令R and R都可以。
root.bind(Control-KeyPress-r ,changer)
root.bind(Control-KeyPress-R ,changer)
#加入消息循环
root.mainloop()
事件绑定的案例3:(一类组件的绑定事件)
导入tkinter
#创建主窗口
root=tkinter。Tk()
#设置窗口大小
root.minsize(300,200)
#按钮1
btn1=tkinter。按钮(root,text=1 )
btn1.place(x=20,y=20,宽度=40,高度=40)
#按钮2
btn2=tkinter。按钮(root,text=2 )
btn2.place(x=80,y=20,宽度=40,高度=40)
#按钮3
btn3=tkinter。按钮(root,text=3 )
btn3.place(x=140,y=20,宽度=40,高度=40)
#按钮4
btn4=tkinter。按钮(root,text=4 )
btn4.place(x=20,y=80,宽度=40,高度=40)
#按钮5
btn5=tkinter。按钮(root,text=5 )
btn5.place(x=80,y=80,宽度=40,高度=40)
#按钮6
btn6=tkinter。按钮(root,text=6 )
btn6.place(x=140,y=80,宽度=40,高度=40)
def changebg(wdc):
#将鼠标放在按钮上,按钮会变成红色
wdc.widget[bg]=red
def changebg1(wdc):
#鼠标左键上的按钮变成白色。
wdc.widget[bg]=white
#绑定按钮鼠标输入事件
btn1.bind_class(Button , Enter ,changebg)
btn1.bind_class(Button , Leave ,changebg1)
#加入消息循环
root.mainloop()
事件绑定的案例4:(所有组件的绑定事件)
鼠标点击所有组件,Entry组件背景颜色都会变红:
导入tkinter
#创建主窗口
root=tkinter。Tk()
#设置窗口大小
root.minsize(300,200)
#按钮
btn1=tkinter。按钮(root,text=############ )
btn1.pack()
#输入框
entry=tkinter。条目(根)
entry.pack()
#多行输入框
text=tkinter。文本(根,宽度=20,高度=5)
text.pack()
#函数
定义更改条目(e):
#当鼠标点击任何组件时,条目组件将变成红色。
条目[bg]=red
#事件绑定
btn1.bind_all(Button-1 ,changeentry)
#加入消息循环
root.mainloop()
关于python_tkinter事件类型的详细内容,本文到此为止。关于python_tkinter事件的更多信息,请搜索热门IT软件开发工作室之前的文章或者继续浏览下面的相关文章。希望大家以后多多支持热门IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。