Advertisement
viking_unet

Hotkey in tkinter

Aug 18th, 2020
1,038
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.89 KB | None | 0 0
  1. """
  2. Пример скрипта для отлавливания нажатия комбинации hotkey в tkinter.
  3. """
  4.  
  5. import time
  6. import tkinter as tk
  7.  
  8.  
  9.  
  10. Form = tk.Tk()
  11.  
  12. # чувствительность (допустимое время между нажатиями двух кнопок)
  13. sensivity = 0.1
  14.  
  15. times = {'a' : 0, 'w' : 0}
  16.  
  17. counter = 0
  18. last_time = 0
  19. def press_aw(event):
  20.     global counter, last_time
  21.     times[event.char] = time.monotonic()
  22.     delta = abs(times['a'] - times['w'])
  23.     if delta <= sensivity:
  24.         # для контроля быстрого двойного нажатия
  25.         last_time = time.monotonic() - last_time
  26.         if last_time:
  27.             print('!!! %s pressed a+w !!!' % counter)
  28.             last_time = time.monotonic()
  29.             counter += 1
  30.  
  31. Form.bind_all('a', press_aw)
  32. Form.bind_all('w', press_aw)
  33.  
  34. Form.mainloop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement