鼠标事件
事件格式 | 事件解释 |
---|---|
<Button-1> |
鼠标点击(1-左键,2-中键,3-右键) |
<Double-Button-1> |
鼠标双击(1-左键,2-中键,3-右键) |
<B1-Motion> |
鼠标拖动(1-左键,2-中键,3-右键) |
<ButtonRelease-1> |
鼠标按下之后释放(1-左键,2-中键,3-右键) |
<Enter> |
鼠标进入控件范围(widget),不是键盘按键 |
<Leave> |
鼠标离开控件范围(widget) |
import tkinter as tk
def showWindow():
window = tk.Tk() # 创建一个窗口对象
window.title('共享桌面') #给窗口命名
window.geometry('600x400+20+20') #定义窗口的长宽,geometry方法中传入字符串参数,字符串中应为长x宽(Note:x是小写字母x)
shareBtn = tk.Button(window,text='测试事件' ,width=20)
shareBtn.grid(row=2, column=1)
# 给按钮绑定事件
shareBtn.bind('<Button-1>',share)
window.mainloop() #mainloop实际上是使用while循环实现的,因为窗口的内容是会动态变化的
# event 事件对象
def share(event):
print(123,event)
if __name__ == '__main__':
showWindow()
事件对象
属性 | 属性说明 | 适用事件类型 |
---|---|---|
.char | 如果按键事件产生通用ASCII字符,这个字符将赋值给event.char。(特殊ASCII字符,如delete等不属于该属性) | <KeyPress> 、<KeyRelease> 等按键事件 |
.keysym | 如果按键事件产生特殊ASCII字符,这个字符将赋值给event.keysym。 | <KeyPress> 、<KeyRelease> 等按键事件 |
.x | 鼠标当前位置横坐标,相对于组件左上角 | |
.y | 鼠标当前位置纵坐标,相对于组件左上角 | |
.x_root | 鼠标当前位置横坐标,相对于屏幕左上角 | |
.y_root | 鼠标当前位置纵坐标,相对于屏幕左上角 | |
.width | 组件大小发生改变后的宽度 | |
.height | 组件大小发生改变后的高度 | |
.type | 事件类型 | ALL |
键盘事件
对应键盘按键:
<Return>
<Cancel>
<BackSpace>
<Tab>
<Shift_L>
<Control_L>
<Alt_L>
<Home>
<Left>
<Up>
<Down>
<Right>
<Delete>
<F1>
<F2>
参考:
https://blog.csdn.net/xiaozhimonica/article/details/87873048