Python基础入门学习笔记 074 GUI的终极选择:Tkinter11


事件绑定

对于每个组件来说,可以通过bind()方法将函数或方法绑定到具体的事件上。当被触发的事件满足该组件绑定的事件时,Tkinter就会带着事件描述去调用handler()方法

实例1:捕获单击鼠标位置

1 fr tkinter import* 2 3 root = Tk() 4 5 def callback(event): 6 print("点击位置:",event.x,event.y) 7 8 frame = Frame(root,width=200,height=200) 9 #Button表示鼠标点击事件 10 #1代表左键 2代表中间滚轮点击 3代表右键 11 frame.bind("<Button1>",callback)#按键按下时,调用callback方法 12 frame.pack() 13 14 mainloop()

实例2:捕获键盘事件

1 #捕获单击鼠标的位置 2 fr tkinter import* 3 4 root = Tk() 5 6 def callback(event): 7 print("敲击位置:",repr(eventhar))#打印当前按下按键的字符 8 print(eventhar) 9 10 frame = Frame(root,width=200,height=200) 11 #Key为键盘事件 12 frame.bind("<Key>",callback)#按键按下时,调用callback方法 13 frame.focus_set()#获得焦点 14 frame.pack() 15 16 mainloop()

实例3:捕获鼠标在组件上的运动轨迹

1 #当鼠标在组件内移动的整个过程均触发该事件 2 3 fr tkinter import* 4 5 root = Tk() 6 7 def callback(event): 8 print("当前位置:",event.x,event.y)#打印当前按下按键的字符 9 10 frame = Frame(root,width=200,height=200) 11 frame.bind("<Motion>",callback)#按键按下时,调用callback方法 12 frame.pack() 13 14 mainloop()

事件序列

Tkinter使用一种称为事件序列的机制来允许用户定义事件,用户需要使用bind()方法将具体的事件序列与自定义的方法绑定

Event对象(按键名keysym和按键码keycode)

实例1:打印当前按下按键的按键名

1 fr tkinter import* 2 3 root = Tk() 4 5 def callback(event): 6 print(event.keysym)#打印当前按下按键的按键名 7 print(eventhar) 8 9 frame = Frame(root,width=200,height=200) 10 #Key为键盘事件 11 frame.bind("<Key>",callback)#按键按下时,调用callback方法 12 frame.focus_set()#获得焦点 13 frame.pack() 14 15 mainloop()



上一篇:VisionPro 软件介绍

下一篇:Python基础入门学习笔记 064 GUI的终极选择:Tkinter


Python
Copyright © 2002-2019 k262电脑网 www.k262.cn 皖ICP备2020016292号
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!QQ:251442993 热门搜索 网站地图