52 lines
1.7 KiB
Python
52 lines
1.7 KiB
Python
import keyboard
|
|
import time
|
|
import ctypes
|
|
|
|
DEBUG = False
|
|
|
|
# Функции для управления мультимедиа
|
|
def play_pause():
|
|
if DEBUG: print("[ДЕЙСТВИЕ] Воспроизведение/Пауза")
|
|
send_vk_code(0xB3) # VK_MEDIA_PLAY_PAUSE
|
|
|
|
def next_track():
|
|
if DEBUG: print("[ДЕЙСТВИЕ] Следующий трек")
|
|
send_vk_code(0xB0) # VK_MEDIA_NEXT_TRACK
|
|
|
|
def prev_track():
|
|
if DEBUG: print("[ДЕЙСТВИЕ] Предыдущий трек")
|
|
send_vk_code(0xB1) # VK_MEDIA_PREV_TRACK
|
|
|
|
# Функция нажатия Delete
|
|
def send_delete():
|
|
if DEBUG: print("[ДЕЙСТВИЕ] Delete (по Right Win + Backspace)")
|
|
send_vk_code(0x2E) # VK_DELETE
|
|
|
|
# Отправка виртуального кода клавиши в Windows
|
|
def send_vk_code(code):
|
|
ctypes.windll.user32.keybd_event(code, 0, 0, 0) # key down
|
|
time.sleep(0.15)
|
|
ctypes.windll.user32.keybd_event(code, 0, 2, 0) # key up
|
|
|
|
# Привязываем горячие клавиши
|
|
keyboard.add_hotkey('right windows+f7', prev_track)
|
|
keyboard.add_hotkey('right windows+f8', play_pause)
|
|
keyboard.add_hotkey('right windows+f9', next_track)
|
|
keyboard.add_hotkey('right windows+backspace', send_delete)
|
|
keyboard.add_hotkey('left windows+backspace', send_delete)
|
|
|
|
# Обработчик нажатий клавиш (для отладки)
|
|
def on_key(event):
|
|
print(f"[НАЖАТО] {event.name}")
|
|
|
|
if DEBUG: keyboard.on_press(on_key)
|
|
|
|
print("Скрипт запущен. Нажмите F7/F8/F9 для управления музыкой. Ctrl+C — выход.")
|
|
|
|
# Бесконечный цикл
|
|
try:
|
|
while True:
|
|
time.sleep(1)
|
|
except KeyboardInterrupt:
|
|
print("Скрипт завершён.")
|