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. Source folder is not on the Java build class path

    源文件夹不在Java构建类路径上 只需右键单击文件夹src - > build path - >Using source folders就是这样

  2. oracle json 解析函数

    CREATE OR REPLACE TYPE ty_tbl_str_split IS TABLE OF ty_row_str_split;CREATE OR REPLACE TYPE ty_row_s ...

  3. ionic ios 打包

    1.安装Xcode   从appstore 安装就行 2.安装node.js 3.安装cordova  由于权限问题  网络问题  可以考虑一下方式 1️⃣使用淘宝镜像    npm install ...

  4. jQuey实现轮播图效果

    再平常的浏览器页面,轮播图都是必不可缺少的一个板块,在这总结了一下轮播图基本的一些样式 首先介绍一下,本文实现的轮播图的基本效果: 1. 3s自动切换图片,图片切换时提示点跟随切换 2. 鼠标划到图片 ...

  5. 关于xib控件变成框框An internal error occurred

    前段时间在进行系统适配的时候,由于在两个不同版本的Xcode之间进行了代码运行调试,导致回到老版本继续开发时xib里面所有的控件全部变成了蓝色的框框...真是哔了狗了 报错信息: an interna ...

  6. ES6学习之-let 和const命令

    let 和const命令 let命令 用来声明变量,类似于var .let声明的变量 只在let命令所在的代码块内有效. 在for循环里也是如此 每次循环其实都是一个代码块 function fn() ...

  7. Redis之Redis持久化

    Redis(Remote Dictionary Server)是一个可持久化的内存.Key-Value数据库. 作为内存数据库,为了防止因服务器断电或系统宕机而引起的数据丢失问题,Redis自带了持久 ...

  8. Python调用time模块设置当前时间-指定时间

    import datetimeimport time#新建元旦时间#将程序打包def A(): # 设定时间 newyear =datetime.datetime(2033,10,1) #调用当前时间 ...

  9. 使用jdk生成自签发证书(过程总结)

    前言: 最近在做华为NB-IoT接口开发,需要用到双向认证,就去学了一下. 然后我将过程总结了一下. 相关华为论坛链接:http://developer.huawei.com/ict/forum/th ...

  10. python获取网页编码问题(encoding和apparent_encoding)

    在requests获取网页的编码格式时,有两种方式,而结果也不同,通常用apparent_encoding更合适 注:推荐一个大佬写的关于获取网页编码格式以及requests中text()和conte ...