• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Python tkinter之Bind(绑定事件)的使用示例

    1、绑定鼠标事件并获取事件属性

    # -*- encoding=utf-8 -*-
    
    import tkinter
    from tkinter import *
    
    
    def left_mouse_down(event):
      print('鼠标左键按下')
    
      # 事件的属性
      widget = event.widget
      print('触发事件的组件:{}'.format(widget))
      print('组件颜色:{}'.format(widget.cget('bg')))
      widget_x = event.x # 相对于组件的横坐标x
      print('相对于组件的横坐标:{}'.format(widget_x))
      widget_y = event.y # 相对于组件的纵坐标y
      print('相对于组件的纵坐标:{}'.format(widget_y))
      x_root = event.x_root # 相对于屏幕的左上角的横坐标
      print('相对于屏幕的左上角的横坐标:{}'.format(x_root))
      y_root = event.y_root # 相对于屏幕的左上角的纵坐标
      print('相对于屏幕的左上角的纵坐标:{}'.format(y_root))
    
    
    def left_mouse_up(event):
      print('鼠标左键释放')
    def moving_mouse(event):
      print('鼠标左键按下并移动')
    def moving_into(event):
      print('鼠标进入')
    def moving_out(event):
      print('鼠标移出')
    def right_mouse_down(event):
      print('鼠标右键按下')
    def right_mouse_up(event):
      print('鼠标右键释放')
    def pulley_up(event):
      print('滑轮向上滚动')
    def focus(event):
      print('聚焦事件')
    def unfocus(event):
      print('失焦事件')
    
    
    if __name__ == '__main__':
      win = tkinter.Tk() # 窗口
      win.title('南风丶轻语') # 标题
      screenwidth = win.winfo_screenwidth() # 屏幕宽度
      screenheight = win.winfo_screenheight() # 屏幕高度
      width = 500
      height = 300
      x = int((screenwidth - width) / 2)
      y = int((screenheight - height) / 2)
      win.geometry('{}x{}+{}+{}'.format(width, height, x, y)) # 大小以及位置
    
      label = Label(text='标签', relief='g', font=('黑体', 20))
      label.pack(pady=10)
    
      label.bind('Button-1>', left_mouse_down) # 鼠标左键按下
      label.bind('ButtonRelease-1>', left_mouse_up) # 鼠标左键释放
      label.bind('Button-3>', right_mouse_down) # 鼠标右键按下
      label.bind('ButtonRelease-3>', right_mouse_up) # 鼠标右键释放
      label.bind('B1-Motion>', moving_mouse) # 鼠标左键按下并移动
      label.bind('Enter>', moving_into) # 鼠标移入事件
      label.bind('Leave>', moving_out) # 鼠标移出事件
      label.bind('FocusIn>', focus) # 聚焦事件
      label.bind('FocusOut>', unfocus) # 失焦事件
      label.focus_set() # 直接聚焦
      Entry().pack()
    
      win.mainloop()

    2、绑定键盘事件并获取事件属性

    # -*- encoding=utf-8 -*-
    import tkinter
    from tkinter import *
    
    
    def keyboard_event(event):
      char = event.char
      print('回车 char:{}'.format(char))
      key_code = event.keycode
      print('回车 key code:{}'.format(key_code))
    
    
    def entry_enter(event):
      print('输入的内容为:' + entry.get())
    
    
    def shift_f(event):
      print('SHIFT + F')
      print(event.char)
      print(event.keycode)
    
    
    def num_lock(event):
      print('num_lock')
      print(event.char)
      print(event.keycode)
    
    
    if __name__ == '__main__':
      win = tkinter.Tk() # 窗口
      win.title('南风丶轻语') # 标题
      screenwidth = win.winfo_screenwidth() # 屏幕宽度
      screenheight = win.winfo_screenheight() # 屏幕高度
      width = 500
      height = 300
      x = int((screenwidth - width) / 2)
      y = int((screenheight - height) / 2)
      win.geometry('{}x{}+{}+{}'.format(width, height, x, y)) # 大小以及位置
    
      label = Label(text='标签', relief='g', font=('黑体', 20))
      label.pack(pady=10)
      label.focus_set()
      label.bind('Return>', keyboard_event) # 按下回车
      label.bind('Shift F>', shift_f)
      label.bind('Num_Lock>', num_lock)
    
      entry = Entry()
      entry.pack()
      entry.bind('Return>', entry_enter) # 按下回车
    
      win.mainloop()

    以上就是Python tkinter之Bind(绑定事件)的使用示例的详细内容,更多关于python tkinter Bind(绑定事件)的资料请关注脚本之家其它相关文章!

    您可能感兴趣的文章:
    • python使用tkinter实现屏幕中间倒计时
    • Python使用tkinter实现小时钟效果
    • Python tkinter实现日期选择器
    • Python使用tkinter制作在线翻译软件
    • 用python制作个音乐下载器
    • 基于python实现的百度音乐下载器python pyqt改进版(附代码)
    • python实现音乐下载的统计
    • python实现音乐下载器
    • python基于tkinter制作无损音乐下载工具(附源码)
    上一篇:pycharm配置python 设置pip安装源为豆瓣源
    下一篇:Pycharm 如何一键加引号的方法步骤
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Python tkinter之Bind(绑定事件)的使用示例 Python,tkinter,之,Bind,绑定,