python_tkinter事件类型详情


Posted in Python onMarch 20, 2022

1.事件绑定函数

事件绑定函数有三个如下:       

组件.bind('事件类型',事件函数)

为一个组件绑定一个操作

组件.bind_class('组件类型','事件类型',事件函数)

为一个类组件绑定一个操作

组件.bind_all('事件类型',事件函数)

为所有组件绑定一个操作(所有操作都会当作对主界面的操作)

2.事件类型

python_tkinter事件类型详情

python_tkinter事件类型详情

python_tkinter事件类型详情

3.事件对象

python_tkinter事件类型详情

事件绑定的案例1:

鼠标进入组件变红,离开组件变白:

python_tkinter事件类型详情

# 单行文本输入框
entry = tkinter.Entry(root)
entry.pack()
# 事件函数
def changered(eventobj):
    # 通过事件对象获取得到组件
    eventobj.widget['bg'] = 'red'#鼠标进入组件变红
def wdc(eventobj):
    eventobj.widget['bg'] = 'white'#鼠标离开组件变白
# 事件绑定
entry.bind('<Enter>',changered)
entry.bind('<Leave>',wdc)

注意:通过绑定函数操作,对应的事件函数,必须有形参接受事件对象。

事件函数必须在绑定之前定义

事件绑定的案例2:

键盘快捷键触发事件:按快捷键改变窗口背景色

python_tkinter事件类型详情

import tkinter

# 创建主窗口
root = tkinter.Tk()
# 设置窗口大小
root.minsize(300,200)

# 变红色
def changer(eventobj):
    eventobj.widget['bg'] = 'red'

# 按Ctrl + r窗口变红色:两条命令 R和r都行
root.bind('<Control-KeyPress-r>',changer)
root.bind('<Control-KeyPress-R>',changer)

# 加入消息循环
root.mainloop()

事件绑定的案例3:(为一类组件绑定事件)

python_tkinter事件类型详情

import tkinter

# 创建主窗口
root = tkinter.Tk()
# 设置窗口大小
root.minsize(300,200)

# 按钮1
btn1 = tkinter.Button(root,text = '1')
btn1.place(x = 20,y = 20,width = 40,height = 40)
# 按钮2
btn2 = tkinter.Button(root,text = '2')
btn2.place(x = 80,y = 20,width = 40,height = 40)
# 按钮3
btn3 = tkinter.Button(root,text = '3')
btn3.place(x = 140,y = 20,width = 40,height = 40)
# 按钮4
btn4 = tkinter.Button(root,text = '4')
btn4.place(x = 20,y = 80,width = 40,height = 40)
# 按钮5
btn5 = tkinter.Button(root,text = '5')
btn5.place(x = 80,y = 80,width = 40,height = 40)
# 按钮6
btn6 = tkinter.Button(root,text = '6')
btn6.place(x = 140,y = 80,width = 40,height = 40)

def changebg(wdc):
    # 鼠标放到按钮上按钮变红
    wdc.widget['bg'] = 'red'
def changebg1(wdc):
    # 鼠标离开按钮上按钮变白
    wdc.widget['bg'] = 'white'
# 绑定按钮鼠标进入事件
btn1.bind_class('Button','<Enter>',changebg)
btn1.bind_class('Button','<Leave>',changebg1)

# 加入消息循环
root.mainloop()

事件绑定的案例4:(为所有组件绑定事件)

鼠标点击所有组件,Entry组件背景颜色都会变红:

python_tkinter事件类型详情

import tkinter

# 创建主窗口
root = tkinter.Tk()
# 设置窗口大小
root.minsize(300,200)

# 按钮
btn1 = tkinter.Button(root,text = '###############')
btn1.pack()
# 输入框
entry = tkinter.Entry(root)
entry.pack()
# 多行输入框
text = tkinter.Text(root,width = 20,height = 5)
text.pack()
# 函数
def changeentry(e):
    # 鼠标点击任意组件,Entry组件都会变红
    entry['bg'] = 'red'

# 事件绑定
btn1.bind_all('<Button-1>',changeentry)

# 加入消息循环
root.mainloop()

到此这篇关于python_tkinter事件类型详情的文章就介绍到这了,更多相关python_tkinter事件内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
利用Python爬虫给孩子起个好名字
Feb 14 Python
python中将字典形式的数据循环插入Excel
Jan 16 Python
对python中的logger模块全面讲解
Apr 28 Python
用TensorFlow实现lasso回归和岭回归算法的示例
May 02 Python
python处理csv中的空值方法
Jun 22 Python
Python 运行 shell 获取输出结果的实例
Jan 07 Python
Python实现定期检查源目录与备份目录的差异并进行备份功能示例
Feb 27 Python
python线性插值解析
Jul 05 Python
python空元组在all中返回结果详解
Dec 15 Python
python 实现有道翻译功能
Feb 26 Python
django使用多个数据库的方法实例
Mar 04 Python
全网非常详细的pytest配置文件
Jul 15 Python
再谈python_tkinter弹出对话框创建
python_tkinter弹出对话框创建
Mar 20 #Python
Python读写yaml文件
Mar 20 #Python
PO模式在selenium自动化测试框架的优势
Python IO文件管理的具体使用
Python实现Excel文件的合并(以新冠疫情数据为例)
Python中三种花式打印的示例详解
Mar 19 #Python
You might like
php下通过POST还是GET来传值
2008/06/05 PHP
ThinkPHP验证码使用简明教程
2014/03/05 PHP
PHP中的排序函数sort、asort、rsort、krsort、ksort区别分析
2014/08/18 PHP
thinkphp连贯操作实例分析
2014/11/22 PHP
使用PHP实现阻止用户上传成人照片或者裸照
2014/12/25 PHP
PHP模块化安装教程
2016/06/01 PHP
总结PHP如何获取当前主机、域名、网址、路径、端口和参数等
2016/09/09 PHP
javascript 类型判断代码分析
2010/03/28 Javascript
jQuery UI 实现email输入提示实例
2013/08/15 Javascript
Json和Jsonp理论实例代码详解
2013/11/15 Javascript
JavaScript中instanceof与typeof运算符的用法及区别详细解析
2013/11/19 Javascript
jQuery中:enabled选择器用法实例
2015/01/04 Javascript
jQuery实现加入购物车飞入动画效果
2015/03/14 Javascript
jquery 动态合并单元格的实现方法
2016/08/26 Javascript
AngularJS入门教程之Helloworld示例
2016/12/25 Javascript
p5.js入门教程和基本形状绘制
2018/03/15 Javascript
JavaScript实现正则去除a标签并保留内容的方法【测试可用】
2018/07/18 Javascript
Vue使用Element实现增删改查+打包的步骤
2020/11/25 Vue.js
微信小程序视频弹幕发送功能的实现
2020/12/28 Javascript
python中使用urllib2获取http请求状态码的代码例子
2014/07/07 Python
python之文件的读写和文件目录以及文件夹的操作实现代码
2016/08/28 Python
Python自动生产表情包
2017/03/17 Python
python使用pil进行图像处理(等比例压缩、裁剪)实例代码
2017/12/11 Python
python退出命令是什么?详解python退出方法
2018/12/10 Python
如何使用Python自动控制windows桌面
2019/07/11 Python
Python常用数据类型之间的转换总结
2019/09/06 Python
python自动化实现登录获取图片验证码功能
2019/11/20 Python
8种常用的Python工具
2020/08/05 Python
美国真皮手袋品牌:GiGi New York
2017/03/10 全球购物
SmartBuyGlasses中国:唯视良品(销售名牌太阳镜、墨镜和眼镜框)
2017/07/03 全球购物
《中彩那天》教学反思
2014/02/22 职场文书
年度优秀员工获奖感言
2014/08/15 职场文书
Nginx 过滤静态资源文件的访问日志的实现
2021/03/31 Servers
PyTorch梯度裁剪避免训练loss nan的操作
2021/05/24 Python
Python 匹配文本并在其上一行追加文本
2022/05/11 Python
SpringBoot项目部署到阿里云服务器的实现步骤
2022/06/28 Java/Android