17python

Python TK和Tkinter的GUI编程(9) Event 键盘鼠标事件

Event鼠标事件

  • :鼠标左击事件
  • :鼠标右击事件
  • :鼠标中击事件
  • :双击事件
  • :三击事件
  • :鼠标移动事件,x=[1,2,3]分别表示左、中、右鼠标操作。
  • 鼠标释放事件,x=[1,2,3],分别表示鼠标的左、中、右键操作
  • :鼠标离开时产生此事件

Event键盘事件

bing和事件函数来触发,其中Key 可以换成对应的键值,也可以是组合键。

程序事件

程序退出root.protocol('WM_DELETE_WINDOW', printProtocol)

源码

效果展示

import tkinter as tk

root = tk.Tk()

###################################
# 鼠标事件
###################################
def printroot(event):
    print(event.x,event.y)

bt = tk.Button(root, text=":双击事件 ")
bt1 = tk.Button(root, text=":三击事件  ")
bt2 = tk.Button(root, text=":鼠标离开时产生此事件")
bt3 = tk.Button(root, text=":鼠标左击事件")
bt4 = tk.Button(root, text=":鼠标右击事件")
bt5 = tk.Button(root, text=":鼠标中击事件")
bt6 = tk.Button(root, text=":鼠标移动事件,x=[1,2,3]分别表示左、右、中鼠标操作。  ")
bt7 = tk.Button(root, text="鼠标释放事件,x=[1,2,3],分别表示鼠标的左、右、中键操作  ")
bt.grid()
bt1.grid()
bt2.grid()
bt3.grid()
bt4.grid()
bt5.grid()
bt6.grid()
bt7.grid()
bt.bind("",printroot)
bt1.bind("",printroot)
bt2.bind("",printroot)
bt3.bind("",printroot)
bt4.bind("",printroot)
bt5.bind("",printroot)
bt6.bind("",printroot)
bt7.bind("",printroot)


###################################
# 键盘事件
###################################
def printkey(event):
    print("event.char = " + event.char)
    print('event.keycode = ', event.keycode)  


root.bind("",printkey)
root.bind("",printkey)
root.bind("",printkey)
root.bind("",printkey)


###################################
# 程序退出
###################################
def printProtocol():  
    print('WM_DELETE_WINDOW')  
    root.destroy() 

root.protocol('WM_DELETE_WINDOW', printProtocol)  
root.mainloop()

相关参考

本文源码下载:

相关标签
About Me
py_sky
你那么喜欢看“干货”,是因为你根本不想下什么功夫;你自以为的极限,其实只是别人的起点。
Category
标签云
站点统计

本站现有博文81篇,共被浏览31701

据官网介绍,2020年4月Python2.7将不会被维护!距离Python2.7停止维护还有693天!

热门文章
文章归档
回到顶部