使用python的Tkinter库,可以开发简单的桌面应用,用户对软件的操作,例如用鼠标点击软件上的某个按钮,在输入框里输入内容,这些行为被称之为事件。
一个事件,会触发软件来执行一段代码来响应用户的操作,这便是人机交互的关键。在Tkinter库里,通过为控件绑定事件和处理函数来实现与人的交互。
将事件与控件绑定,需要使用bind方法,该方法有两个参数
下面的程序演示如何为Label控件绑定鼠标点击事件
from tkinter import *
window = Tk()
def mouseClick(event):
print("点击鼠标")
label = Label(window, text="点击我")
label.pack()
label.bind("<Button>", mouseClick)
window.mainloop()
运行程序,在Label上点击,控制台会输出“点击鼠标”
不同的事件类型,对应着不同的操作,下面是Tkinter事件类型的一部分
事件装饰符可以修改事件激活的条件,例如要求事件发生时,比如按下某个按钮才成立
给Label绑定鼠标双击事件,就可这样编写代码
label.bind("<Double-Button>", mouseClick)
detail部分,可以对事件做出更详细的规定,例如点击鼠标事件,可以指定是鼠标左键,还是右键。
label.bind("<Button-1>", mouseClick) # 左键
label.bind("<Button-3>", mouseClick) # 右键
window.bind("<KeyPress-p>", key)
只有按下p按钮时,才会触发KeyPress事件。
事件触发后执行的函数,只有事件对象一个参数,事件对象包含了如下信息
QQ交流群: 211426309