Tkinter教程之Event篇(1)'

原创 2007年10月13日 21:08:00
'''Tkinter教程之Event篇(1)'''
# 事件的使用方法
'''1.测试鼠标点击(Click)事件'''
# -*- coding: cp936 -*-
#
 <Button-1>:鼠标左击事件
#
 <Button-2>:鼠标中击事件
#
 <Button-3>:鼠标右击事件
#
 <Double-Button-1>:双击事件
#
 <Triple-Button-1>:三击事件
from Tkinter import *
root 
= Tk()
def printCoords(event):
    
print event.x,event.y
# 创建第一个Button,并将它与左键事件绑定
bt1 = Button(root,text = 'leftmost button')
bt1.bind(
'<Button-1>',printCoords)

# 创建二个Button,并将它与中键事件绑定
bt2 = Button(root,text = 'middle button')
bt2.bind(
'<Button-2>',printCoords)

# 创建第三个Button,并将它与右击事件绑定
bt3 = Button(root,text = 'rightmost button')
bt3.bind(
'<Button-3>',printCoords)

# 创建第四个Button,并将它与双击事件绑定
bt4 = Button(root,text = 'double click')
bt4.bind(
'<Double-Button-1>',printCoords)

# 创建第五个Button,并将它与三击事件绑定
bt5 = Button(root, text = 'triple click')
bt5.bind(
'<Triple-Button-1>',printCoords)

bt1.grid()
bt2.grid()
bt3.grid()
bt4.grid()
bt5.grid()

root.mainloop()
# 分别测试鼠标的事件,回调函数的参数event中(x,y)表示当前点击的坐标值
'''2.测试鼠标的移动(Motion)事件'''
# -*- coding: cp936 -*-
#
 <Bx-Motion>:鼠标移动事件,x=[1,2,3]分别表示左、中、右鼠标操作。
from Tkinter import *
root 
= Tk()
def printCoords(event):
    
print event.x,event.y
# 创建第一个Button,并将它与左键移动事件绑定
bt1 = Button(root,text = 'leftmost button')
bt1.bind(
'<B1-Motion>',printCoords)

# 创建二个Button,并将它与中键移动事件绑定
bt2 = Button(root,text = 'middle button')
bt2.bind(
'<B2-Motion>',printCoords)

# 创建第三个Button,并将它与右击移动事件绑定
bt3 = Button(root,text = 'rightmost button')
bt3.bind(
'<B3-Motion>',printCoords)


bt1.grid()
bt2.grid()
bt3.grid()

root.mainloop()
# 分别测试鼠标的移动事件,只有当鼠标被按下后移动才回产生事件
'''3.测试鼠标的释放(Relase)事件'''
# -*- coding: cp936 -*-
#
 <ButtonRelease-x>鼠标释放事件,x=[1,2,3],分别表示鼠标的左、中、右键操作
from Tkinter import *
root 
= Tk()
def printCoords(event):
    
print event.x,event.y
# 创建第一个Button,并将它与左键释放事件绑定
bt1 = Button(root,text = 'leftmost button')
bt1.bind(
'<ButtonRelease-1>',printCoords)

# 创建二个Button,并将它与中键释放事件绑定
bt2 = Button(root,text = 'middle button')
bt2.bind(
'<ButtonRelease-2>',printCoords)

# 创建第三个Button,并将它与右击释放事件绑定
bt3 = Button(root,text = 'rightmost button')
bt3.bind(
'<ButtonRelease-3>',printCoords)


bt1.grid()
bt2.grid()
bt3.grid()

root.mainloop()
# 分别测试鼠标的Relase事件,只有当鼠标被Relase后移动才回产生Relase事件
'''4.进入(Enter)事件'''
# -*- coding: cp936 -*-
#
 <Enter>:鼠标释放事件
from Tkinter import *
root 
= Tk()
def printCoords(event):
    
print event.x,event.y
# 创建第一个Button,并将它与Enter事件绑定
bt1 = Button(root,text = 'leftmost button')
bt1.bind(
'<Enter>',printCoords)

bt1.grid()

root.mainloop()
# 分别测试Enter事件,只是在第一次进入进回产生事件,在组件中移动不会产生Enter事件。
 

[Tkinter 教程15] event 事件绑定

简介一个 Tkinter 应用生命周期中的大部分时间都处在一个消息循环 (event loop) 中. 它等待事件的发生: 事件可能是 按键按下, 鼠标点击, 鼠标移动 等. Tkinter 提供了...
  • liuxu0703
  • liuxu0703
  • 2017年03月06日 22:23
  • 1804

tkinter Event Bindings

如下为Tk官方的例子:http://www.tkdocs.com/tutorial/concepts.htmlfrom tkinter import * from tkinter import ttk...
  • shirayukixue
  • shirayukixue
  • 2015年06月11日 11:02
  • 989

Tkinter教程之Event篇(3)

'''Tkinter教程之Event篇(3)''' '''11.两个事件同时绑定到一个控件''' # -*- coding: utf-8 -*- # bind:将事件与处理函数 # 将两个事件绑定为同...
  • aa1049372051
  • aa1049372051
  • 2016年07月12日 16:21
  • 5637

Tkinter教程之Event篇(2)

Tkinter教程之Event篇(2)5.测试离开(Leave)事件# -*- coding: cp936 -*-# leave:鼠标离开时产生此事件from Tkinter import *root...
  • jcodeer
  • jcodeer
  • 2007年10月13日 21:14
  • 5048

Python Tkinter教程之Event篇(2)

'''Tkinter教程之Event篇(2)''' '''5.测试离开(Leave)事件''' # -*- coding: cp936 -*- # leave:鼠标离开时产生此事件 from ...
  • zhou191954
  • zhou191954
  • 2012年12月16日 23:27
  • 1309

Python Tkinter 事件和映射

Events and Bindings As was mentioned earlier, a Tkinter application spends most of its time...
  • bnanoou
  • bnanoou
  • 2014年08月08日 09:28
  • 10125

python tkinter教程-事件绑定

一个Tkinter主要跑在mainloop进程里。Events可能来自多个地方,比如按键,鼠标,或是系统事件。 Tkinter提供了丰富的方法来处理这些事件。对于每一个控件Widge,你都可以为其绑...
  • u014027051
  • u014027051
  • 2016年12月22日 15:08
  • 12666

Tkinter 鼠标键盘事件

摘抄自:IT小小龙 python视频:http://www.tudou.com/programs/view/SWuVbjeKf9o/ 一: 鼠标事件                 ...
  • wjciayf
  • wjciayf
  • 2016年01月20日 21:22
  • 3042

Tkinter教程之Event篇(3)

Tkinter教程之Event篇(3)11.两个事件同时绑定到一个控件# -*- coding: cp936 -*-# bind:将事件与处理函数# 将两个事件绑定为同一个组件# 为root绑定两个事...
  • jcodeer
  • jcodeer
  • 2007年10月13日 21:15
  • 5612

Tkinter 事件与回调

代码访问GitHub: 命令绑定 将简单的组件绑定到function函数上 如果需要处理参数的话,使用lambda函数 事件绑定可以使用 widget.bind(事件,回调)方法将键盘和鼠标的事件...
  • qjk19940101
  • qjk19940101
  • 2017年01月12日 10:49
  • 361
收藏助手
不良信息举报
您举报文章:Tkinter教程之Event篇(1)'
举报原因:
原因补充:

(最多只允许输入30个字)