python对绑定事件的鼠标、按键的判断实例


Posted in Python onJuly 17, 2019

当多个事件绑定了同一个命令,那么在命令内部根据不同的事件进行处理的时候,怎么确定哪个事件发生了呢,用下面的来检测,经过测试处理tab键和alt键不能识别,其他单个都能被识别。

还有个事件的type属性,这个经过测试键盘事件返回字符2,鼠标返回字符2,可以根据这个再进行判断反会的是键盘事件还是鼠标事件。

# <Button-1>:鼠标左击事件
# <Button-2>:鼠标中击事件
# <Button-3>:鼠标右击事件
# <Double-Button-1>:双击事件
# <Triple-Button-1>:三击事件

from tkinter import *
tk = Tk()
canvas = Canvas(width=500,height=500)
canvas.pack()


#canvas.create_polygon(0,0,250,250,fill = 'red')

def echo_event(evt):
 #打印键盘事件
 if evt.type == "2":
  print("键盘:%s" % evt.keysym)
 #打印鼠标操作
 if evt.type == "4":
  print("鼠标: %s" % evt.num)
 #
 print(evt.type)

#键盘事件
canvas.bind_all("<KeyPress>",echo_event)
#如果绑定指定的键盘,则"<Key>" 或者"<KeyPress>"都可以,具体到指定键的话后面加入下划线和指定的键就好了,如:绑定小写字母t和Left键
canvas.bind_all("<KeyPress-t>",echo_event)
canvas.bind_all("<KeyPress-Left>",echo_event)
#鼠标事件
canvas.bind_all("<Double-Button-1>",echo_event)
canvas.bind_all("<Button-1>",echo_event)
canvas.bind_all("<Button-2>",echo_event)
canvas.bind_all("<Button-3>",echo_event)

以上这篇python对绑定事件的鼠标、按键的判断实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中Django发送带图片和附件的邮件
Mar 31 Python
老生常谈python函数参数的区别(必看篇)
May 29 Python
Python中表示字符串的三种方法
Sep 06 Python
python绘制简单折线图代码示例
Dec 19 Python
使用Py2Exe for Python3创建自己的exe程序示例
Oct 31 Python
python文字和unicode/ascll相互转换函数及简单加密解密实现代码
Aug 12 Python
Python帮你识破双11的套路
Nov 11 Python
Python FFT合成波形的实例
Dec 04 Python
Python PyPDF2模块安装使用解析
Jan 19 Python
Python通过正则库爬取淘宝商品信息代码实例
Mar 02 Python
Python 随机按键模拟2小时
Dec 30 Python
django注册用邮箱发送验证码的实现
Apr 18 Python
Django model update的多种用法介绍
Mar 28 #Python
Django model select的多种用法详解
Jul 16 #Python
python删除文件夹下相同文件和无法打开的图片
Jul 16 #Python
Python split() 函数拆分字符串将字符串转化为列的方法
Jul 16 #Python
python实现字符串完美拆分split()的方法
Jul 16 #Python
python如何删除文件中重复的字段
Jul 16 #Python
python字符串切割:str.split()与re.split()的对比分析
Jul 16 #Python
You might like
S900/ ETON E1-XM 收音机
2021/03/02 无线电
PHP中的多行字符串传递给JavaScript的两种方法
2014/06/19 PHP
19个Android常用工具类汇总
2014/12/30 PHP
Laravel 5框架学习之日期,Mutator 和 Scope
2015/04/08 PHP
thinkphp框架使用JWTtoken的方法详解
2019/10/10 PHP
用jquery实现下拉菜单效果的代码
2010/07/25 Javascript
jQuery创建平滑的页面滚动(顶部或底部)
2013/02/26 Javascript
如何在一个页面显示多个百度地图
2013/04/07 Javascript
AngularJS基础学习笔记之指令
2015/05/10 Javascript
JavaScript使用DeviceOne开发实战(三)仿微信应用
2015/12/02 Javascript
如何动态加载外部Javascript文件
2015/12/02 Javascript
通过node-mysql搭建Windows+Node.js+MySQL环境的教程
2016/03/01 Javascript
JavaScript实现瀑布流以及加载效果
2017/02/11 Javascript
BootStrap 获得轮播中的索引和当前活动的焦点对象
2017/05/11 Javascript
详解JavaScript原型与原型链
2020/11/16 Javascript
JavaScript this关键字的深入详解
2021/01/14 Javascript
vue仿携程轮播图效果(滑动轮播,下方高度自适应)
2021/02/11 Vue.js
关于Js中new操作符的作用详解
2021/02/21 Javascript
[04:16]DOTA2全国高校联赛16强抽签
2018/05/02 DOTA
Python求两个list的差集、交集与并集的方法
2014/11/01 Python
Python使用django搭建web开发环境
2017/06/09 Python
Python 3.6 读取并操作文件内容的实例
2018/04/23 Python
python_opencv用线段画封闭矩形的实例
2018/12/05 Python
深入浅析python 协程与go协程的区别
2019/05/09 Python
Python astype(np.float)函数使用方法解析
2020/06/08 Python
Python ConfigParser模块的使用示例
2020/10/12 Python
利用CSS3的transform做的动态时钟效果
2011/09/21 HTML / CSS
HTML5 Canvas 绘图——使用 Canvas 绘制图形图文教程 使用html5 canvas 绘制精美的图
2015/08/31 HTML / CSS
Corelle官方网站:购买康宁餐具
2016/11/02 全球购物
给分销商的致歉信
2014/01/14 职场文书
党员承诺书怎么写
2014/05/20 职场文书
2016十一国庆节慰问信
2015/12/01 职场文书
团队拓展训练心得体会
2016/01/12 职场文书
2019年年中工作总结讲话稿模板
2019/03/25 职场文书
Go语言设计模式之结构型模式
2021/06/22 Golang
Win11 Beta 预览版 22621.575 和 22622.575更新补丁KB5016694发布(附更新内容大全)
2022/08/14 数码科技