1.点击

from tkinter import *

root=Tk()
def printCoords(event):
    print(event.x,event.y)
bt1=Button(root,text='leftmost button')
bt1.bind('<Button-1>',printCoords)

bt2=Button(root,text='middle button')
bt2.bind('<Button-2>',printCoords)

bt3=Button(root,text='rightmost button')
bt3.bind('<Button-3>',printCoords)

bt4=Button(root,text='double button')
bt4.bind('<Double-Button-1>',printCoords)

bt5=Button(root,text='triple button')
bt5.bind('<Triple-Button-1>',printCoords)

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

root.mainloop()

2.移动

from tkinter import *

root=Tk()
def printCoords(event):
    print(event.x,event.y)
bt1=Button(root,text='leftmost button')
bt1.bind('<B1-Motion>',printCoords)

bt2=Button(root,text='middle button')
bt2.bind('<B2-Motion>',printCoords)

bt3=Button(root,text='rightmost button')
bt3.bind('<B3-Motion>',printCoords)

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

root.mainloop()

3.释放

from tkinter import *

root=Tk()
def printCoords(event):
    print(event.x,event.y)
bt1=Button(root,text='leftmost button')
bt1.bind('<ButtonRelease-1>',printCoords)

bt2=Button(root,text='middle button')
bt2.bind('<ButtonRelease-2>',printCoords)

bt3=Button(root,text='rightmost button')
bt3.bind('<ButtonRelease-3>',printCoords)

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

root.mainloop()

4.进入

from tkinter import *

root=Tk()
def printCoords(event):
    print(event.x,event.y)
bt1=Button(root,text='leftmost button')
bt1.bind('<Enter>',printCoords)

bt1.grid()

root.mainloop()

5.离开

from tkinter import *

root=Tk()
def printCoords(event):
    print(event.x,event.y)
bt1=Button(root,text='leftmost button')
bt1.bind('<Leave>',printCoords)

bt1.grid()

root.mainloop()

6.响应特殊键

from tkinter import *

root=Tk()
def printCoords(event):
    print(event.x,event.y)
bt1=Button(root,text='leftmost button')
bt1.bind('<BackSpace>',printCoords)

bt2=Button(root,text='middle button')
bt2.bind('<Return>',printCoords)

bt3=Button(root,text='rightmost button')
bt3.bind('<F5>',printCoords)

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

root.mainloop()

7.响应所有按键

from tkinter import *

root=Tk()
def printCoords(event):
    print(event.x,event.y)
bt1=Button(root,text='leftmost button')
bt1.bind('<Key>',printCoords)

bt1.focus_set()
bt1.grid()

root.mainloop()

8.响应指定按键

from tkinter import *

root=Tk()
def printCoords(event):
    print(event.x,event.y)
bt1=Button(root,text='leftmost button')
bt1.bind('a',printCoords)

bt2=Button(root,text='middle button')
bt2.bind('<space>',printCoords)

bt3=Button(root,text='rightmost button')
bt3.bind('<less>',printCoords)

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

root.mainloop()

响应a

空格

小于号

9.响应组合键

from tkinter import *

root=Tk()
def printCoords(event):
    print(event.x,event.y)
bt1=Button(root,text='leftmost button')
bt1.bind('<Control-Alt-c>',printCoords)

bt1.focus_set()
bt1.grid()

root.mainloop()

10.改变组件大小事件

from tkinter import *

root=Tk()
def printCoords(event):
    print(event.width,event.height)
bt1=Button(root,text='leftmost button')
bt1.bind('<Configure>',printCoords)

bt1.focus_set()
bt1.grid()

root.mainloop()

11.两个事件绑定到一个控件

from tkinter import *

root=Tk()
def printEvent(event):
    print('<Key>',event.keycode)
def printReturn(event):
    print('<Return>',event.keycode)

root.bind('<Key>',printEvent)
root.bind('<Return>',printReturn)

root.mainloop()

Python Tkinter-Event的更多相关文章

  1. Python Tkinter基础控件入门实例

    分享一个Python Tkinter基础控件用法的入门例子,包括窗口的显示.显示内置图片.弹出窗口.菜单等. 例子,Python Tkinter基础控件的用法 # -*- coding: utf-8 ...

  2. Python Tkinter 学习成果:点歌软件music

    笔者工作业余时间也没什么爱好,社交圈子也小,主要娱乐就是背着自己带电瓶的卖唱音响到住地附近找个人多的位置唱唱KtV. 硬件上点歌就用笔记本电脑,歌曲都是网上下载的mkv格式的含有两个音轨的视频.因此点 ...

  3. Python Tkinter Entry(文本框)

    Python学习记录--关于Tkinter Entry(文本框)的选项.方法说明,以及一些示例. 属性(Options) background(bg) borderwidth(bd) cursor e ...

  4. python tkinter Listbox用法

    python tkinter组件的Listbox的用法,见下面代码的演示: from tkinter import * root=Tk() v=StringVar() #Listbox与变量绑定' l ...

  5. python Tkinter之Button

    Button小部件是一个标准的Tkinter的部件,用于实现各种按钮.按钮可以包含文本或图像,您可以调用Python函数或方法用于每个按钮. Tkinter的按钮被按下时,会自动调用该函数或方法. 该 ...

  6. python gui tkinter快速入门教程 | python tkinter tutorial

    本文首发于个人博客https://kezunlin.me/post/d5c57f56/,欢迎阅读最新内容! python tkinter tutorial Guide main ui messageb ...

  7. Python tkinter模块弹出窗口及传值回到主窗口操作详解

    这篇文章主要介绍了Python tkinter模块弹出窗口及传值回到主窗口操作,结合实例形式分析了Python使用tkinter模块实现的弹出窗口及参数传递相关操作技巧,需要的朋友可以参考下 本文实例 ...

  8. Python Tkinter 文本框(Entry)

    Python Tkinter 文本框用来让用户输入一行文本字符串. 你如果需要输入多行文本,可以使用 Text 组件. 你如果需要显示一行或多行文本且不允许用户修改,你可以使用 Label 组件. 语 ...

  9. Python Tkinter 窗口创建与布局

    做界面,首先需要创建一个窗口,Python Tkinter创建窗口很简单:(注意,Tkinter的包名因Python的版本不同存在差异,有两种:Tkinter和tkinter,读者若发现程序不能运行, ...

  10. Python tkinter 实现简单登陆注册 基于B/S三层体系结构,实现用户身份验证

    Python tkinter 实现简单登陆注册 最终效果 开始界面 ​ 注册 登陆 ​ 源码 login.py # encoding=utf-8 from tkinter import * from ...

随机推荐

  1. Java byte数据转换和处理总结

    一.byte和int相互转换的方法 java程序或Android程序的socket数据传输,都是通过byte数组,但是int类型是4个byte组成的,如何把一个整形int转换成byte数组,同时如何把 ...

  2. sort_area_retained_size之tom解释

    sort_area_retained_size 摘录一段asktom中tom的解释,对sort内存分配的方式进行了描述: it will allocate up to sort_area_retain ...

  3. Oracle11gR2(ASM,UDEV)的RAC搭建安装

    基本信息: 1) 安装包: 操作系统:rhel-server-6.7-x86_64-dvd.iso rac安装包: Oracle11gR2:linux.x64_11gR2_database_1of2. ...

  4. css一边固定,另一边自适应的方法

    第一种: 第二种:

  5. mysql5.7 安装版 表不能输入汉字解决方案

    安装版本 的安装目录没有 my.ini 配置文件 在所在表执行 alter table 数据表名 CONVERT TO CHARACTER SET utf8;

  6. ABAP术语-Update Data

    Update Data 原文:http://www.cnblogs.com/qiangsheng/archive/2008/03/20/1114169.html The data which is t ...

  7. HCDA day1

    OSI有几层: OSI将计算机网络体系结构(architecture)划分为以下七层: 图1.OSI模型 物理层: 将数据转换为可通过物理介质传送的电子信号 相当于邮局中的搬运工人. 物理层(Phys ...

  8. Redis之配置文件redis.conf

    解读下 redis.conf 配置文件中常用的配置项,为不显得过于臃长,已选择性删除原配置文件中部分注释. # Redis must be started with the file path as ...

  9. django的数据库操作-16

    目录 增 1.save 2.create 查 1.基本查询 2.过滤查询 3. F对象 4. Q对象 5. 聚合函数 6. 排序 7. 关联查询 8. 关联+过滤查询 删 改 1. save 2. u ...

  10. golang基础--method方法

    Go没有类似python语言中类class的概念,但依旧有method 类型方法定义格式如下 func (a mytype) method_name(x type)(y type){ return y ...