python事件是什么意思_Python-Tkinter事件处理

Python-Tkinter

事件处理

所谓

event

事件就是程序上发生的事。例如用户敲击键盘上的某一个键或是点

击移动鼠标。而对于这些事件,程序需要做出反应。

Tkinter

提供的组件通常

都包含许多内在行为,例如当按钮

所谓

event

事件就是程序上发生的事。例如用户敲击键盘上的某一个键或是

点击移动鼠标。而对于这些事件,程序需要做出反应。

Tkinter

提供的组件通常都包含许多内在行为,

例如当按钮被点击时执行特定

操作或是当一个输入栏成为焦点,

而您又敲击了键盘上的某些按键,

您所输入的

内容就会显示在输入栏内。

不过,

Tkinter

的事件处理允许您创建、修改或是删除这些行为。

首先给出如下定义:

事件处理者:程序中在当事件发生时被调用的某个函数。

当您为您的程序建立一个处理某一事件的事件处理者,称之为绑定。

绑定级别:

三个级别:

实例绑定:将事件与一特定的组件实例绑定。例如您可以将按下

PageUp

键这一事件与一个

Canvas

组件实例绑定,

来处理

Canvas

的翻页。

调用组件实例

.bind()

函数为组件实例绑定事件。例如,假设您声明了一个名为

canvas

Canvas

组件对象。您想在

canvas

上,当按下鼠标中键时画上一条线。您可以这

样实现:

canvas.bind(“

-

2>”, drawline)

其中

bind

函数的第一个参数是事件描述符,他指定无论什么时候在

canvas

上,

当按下鼠标中键时就调用事件处理函数

drawline

进行画线的任务。特别的是:

drawline

后面的圆括号是省略的。

Tkinter

会将此函数填入相关参数后调用运行。

在这里只是连结性声明而以。

类绑定:

将事件与一组件类绑定。

例如您可以绑定按钮组件类,

使得所有按

钮实例都可以处理鼠标中键事件作相应的操作。

调用任意组件实例的

.bind_class()

函数为特定组件类绑定事件。例如,假设您声明了若干个

Canvas

组件对象。您

想在这些对象上,当按下鼠标中键时都能画上一条线。您可以这样实现:

widget.bind_class(“Canvas”, “

-

2>”, drawline)

其中

widget

是任意组件对象。

程序界面绑定:当无论在哪一组件实例上触发某一事件,程序都作出相应

的处理。例如您可能会将

PrintScreen

键与程序中的所有组件对象绑定,这样的

话整个程序界面就能处理打印屏幕的事件了。调用任意组件实例的

.bind_all()

数为程序界面绑定事件。例如您可以这样实现打印屏幕:

widget.bind_all( “

-

print>”,printScreen)

事件队列:

Tkinter

为您定义正确的事件提供了强大的通用方式。一般来说,事件队列

是包含了一个或多个事件类型的字符串。

每一个事件类型指定了一项事件,

当有

多项事件类型包含于事件队列中,

当且仅当描述符中全部事件发生时才调用处理

函数。

事件类型的通用格式:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值