Python tkinter (14) —— 按键事件

本文主要介绍Python tkinter 几种按键事件及其示例。

目录

按键事件

响应所有按键事件

窗体绑定事件

响应特殊按键事件

指定按键事件

组合按键事件

总结


tkinter系列文章

python tkinter窗口简单实现

Python tkinter (1) —— Label标签

Python tkinter (2) —— Button标签

Python tkinter (3) —— Entry标签

Python tkinter (4) —— Text控件

Python tkinter (5) 选项按钮与复选框

Python tkinter (6) ——Listbox

Python tkinter (8) ——Spinbox控件

Python tkinter (9) ——Menu控件

Python tkinter (10) ——Combobox控件

Python tkinter (11) —— Frame控件

Python tkinter (12) —— Treeview控件

Python tkinter (13) —— 事件

按键事件

响应所有按键事件

给文本控件绑定<Key>事件后,进入窗口随便输入任何字符即可触发。

示例如下:

import tkintertk = tkinter.Tk()
tk.title('简单示例')
tk.geometry('300x200+200+20')label1 = tkinter.Label(tk, text='回首向来萧瑟处,归去,也无风雨也无晴')
# 获取焦点
label1.focus_set()label1.pack()def common_fun(event):print('char:', event.char)print('keycodde:', event.keycode)label1.bind('<Key>', common_fun)
tk.mainloop()

效果如下:

窗体绑定事件

还可以直接给窗口绑定事件,在整个窗口中敲击键盘都可触发。

示例如下:

tk = tkinter.Tk()
tk.title('简单示例')
tk.geometry('300x200+200+20')
def common_fun(event):print('char:', event.char)print('keycodde:', event.keycode)tk.bind('<Key>', common_fun)
tk.mainloop()

响应特殊按键事件

当进入窗口后,按这些特殊按键时会触发事件。

示例如下:

import tkintertk = tkinter.Tk()
tk.title('简单示例')
tk.geometry('300x200+200+20')label1 = tkinter.Label(tk, text='回首向来萧瑟处,归去,也无风雨也无晴')
# 获取焦点
label1.focus_set()label1.pack()def common_fun(event):print('char:', event.char)print('keycodde:', event.keycode)# 响应特殊按键
# <F5>
# <Return> 回车
# <BackSpace> 退格
label1.bind('<Return>', common_fun)tk.mainloop()

指定按键事件

可以绑定指定的任意字母和键盘按钮来响应事件。

示例如下:

import tkintertk = tkinter.Tk()
tk.title('简单示例')
tk.geometry('300x200+200+20')def comon_fun(event):print('char:', event.char)print('keycodde:', event.keycode)tk.bind('b', comon_fun)
tk.mainloop()

组合按键事件

可以设置多个按键组合后响应事件。

示例如下:

import tkintertk = tkinter.Tk()
tk.title('简单示例')
tk.geometry('300x200+200+20')def zh_fun(event):print('char:', event.char)print('keycode:', event.keycode)tk.bind('<Control-Alt-b>', zh_fun)
tk.mainloop()

注意:不能与原有组合按键冲突。

总结

本文主要介绍Python tkinter 几种按键事件及其示例。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/450545.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Python】【完整代码】解析Excel文件内容,按每列首行元素名打印出某个字符串的统计占比(超详细)

目录 1.示例&#xff1a; 1.1 实现代码1&#xff1a;列数为常量 运行结果&#xff1a; 1.2 实现代码2&#xff1a;列数为变量 运行结果&#xff1a; 1.示例&#xff1a; 开发需求&#xff1a;读取Excel文件&#xff0c;统计第3列到第5列中每列的"False"字段占…

Linux第41步_移植ST公司uboot的第2步_修改网络驱动_USB OTG设备树_LCD驱动_以及编译和烧写测试

移植ST公司uboot的第1步&#xff0c;创建配置文件、设备树、修改电源管理和sdmmc节点后&#xff0c;还需要进一部修改&#xff0c;如&#xff1a;网络驱动、USB OTG设备树、LCD驱动&#xff0c;以及编译和烧写测试。 一、在虚拟机中&#xff0c;使用VSCode打开my_uboot工作区 …

日志报错 git -c dif.mnemonicprefix=false -c core.guotepath=false 解决方法

前言: 在进行下面操作前,必须确保,你是否安装了Git。 查看Git 在命令行窗口中输入`git --version`: 如果这个命令成功显示了Git的版本信息,这表明Git已经被安装。 1. 使用Sourcetree SourceTree 是 Windows 和Mac OS X 下免费的 Git 和 Hg 客户端…

Spring事件之注解@EventListener讲解

文章目录 1 注解EventListener1.1 示例Demo1.1.1 简单例子1.1.2 解耦1.1.3 Spring事件 1.2 深入EventListener1.2.1 debug调试1.2.2 问题一&#xff1a; Spring是怎么知道要去触发这个方法1.2.3 问题二&#xff1a;ApplicationListenerMethodAdapter1.2.4 问题三&#xff1a;Si…

Python算法题集_矩阵置零

Python算法题集_矩阵置零 题73&#xff1a;矩阵置零1. 示例说明2. 题目解析- 题意分解- 优化思路- 测量工具 3. 代码展开1) 标准求解【三层循环】2) 改进版一【纵横计数器】3) 改进版二【原地算法】 4. 最优算法 本文为Python算法题集之一的代码示例 题73&#xff1a;矩阵置零…

python爬虫5

1.selenium交互 无页面浏览器速度更快 #配置好的自己不用管 from selenium import webdriverfrom selenium.webdriver.chrome.options import Optionschrome_options Options()chrome_options.add_argument(‐‐headless)chrome_options.add_argument(‐‐disable‐gpu)# path…

vue不同环境配置不同打包命令

这个需求非常普遍&#xff0c;通常情况我们在开发的时候一般会有三个环境&#xff1a;开发环境、测试环境、生产环境&#xff0c;我们一步步来看下。 vue环境变量是什么&#xff1f; 指的是在不同地方&#xff08;开发环境、测试环境、生产环境&#xff09;&#xff0c;变量就…

C语言经典面试题——翻转单词顺序VS左旋转字符串

目录 1. 翻转单词顺序1.1 题目描述1.2 解法1.3 完整代码 2. 左旋转字符串2.1 题目描述2.1.1 解法一&#xff1a;2.1.2 解法二&#xff1a;2.1.2.1 strcpy2.1.2.2 strcat2.1.2.3 完整代码 2.1.3 解法三&#xff1a; 1. 翻转单词顺序 1.1 题目描述 输入一个英文句子&#xff0c;…

Docker安装RocketMQ 笔记

RocketMQ架构上主要分为四部分&#xff1a; Producer&#xff1a;消息发布的角色&#xff0c;支持分布式集群方式部署。Producer通过MQ的负载均衡模块选择相应的Broker集群队列进行消息投递&#xff0c;投递的过程支持快速失败并且低延迟。Consumer&#xff1a;消息消费的角色…

【C++】C++入门— 类与对象初步介绍

C入门 1 认识面向对象2 类的引入3 类的定义类的定义方式 4 类的访问限定符及封装访问限定符封装 Thanks♪(&#xff65;ω&#xff65;)&#xff89;谢谢阅读&#xff01;下一篇文章见&#xff01;&#xff01;&#xff01; 1 认识面向对象 C语言是面向过程的&#xff0c;关注…

浅析Redis③:命令处理之数据返回Client(下)

写在前面 Redis作为我们日常工作中最常使用的缓存数据库&#xff0c;其重要性不言而喻&#xff0c;作为普通开发者&#xff0c;我们在日常开发中使用Redis&#xff0c;主要聚焦于Redis的基层数据结构的命令使用&#xff0c;很少会有人对Redis的内部实现机制进行了解&#xff0c…

109.乐理基础-五线谱-五线谱的附点、休止符、连线、延音线

内容参考于&#xff1a;三分钟音乐社 上一个内容&#xff1a;五线谱的拍号、音符与写法-CSDN博客 上一个内容里练习的答案&#xff1a; 附点&#xff1a;写在符头的右方&#xff0c;附点的作用与简谱一样&#xff0c;延长前面音符本身时值的一半&#xff08;附点&#xff09;…