Сгенерировать нажатие аппаратной клавиши в Mac OS на Python

avatar
pimm245
8 августа 2021 в 23:04
73
0
0

Я пытаюсь передать нажатие клавиши '5' из Python в Mame OSX, чтобы зарегистрировать вставку четвертака в аркаду и добавить жетон в самодельную аркадную игру. Проблема, похоже, в том, что Mame OSX регистрирует только физические нажатия на клавиатуру, а не передаваемые события клавиатуры. Я пробовал несколько методов, таких как:

import os
import time
cmd = """
osascript -e 'tell application "Mame OS X" keystroke "5"' 
""

time.sleep(5)
os.system(cmd)

или

from appscript import app, k
import time

time.sleep(5)
app('System Events').keystroke('5')

или

from pyautogui import press
import time

time.sleep(5)
press('5')

или

import keyboard
import time

time.sleep(5)
keyboard.press_and_release('5')

или

import pyautogui
import time

x = True

while x is True:
    pyautogui.press('5')
    time.sleep(5)

или

from pynput.keyboard import Key, Controller
import time

keyboard = Controller()

time.sleep(5)
keyboard.press('5')
time.sleep(1)
keyboard.release('5')

Многие из них работают в том смысле, что я могу переключиться на такую ​​программу, как TextEdit, и автоматически набрать 5 (спит только для того, чтобы у меня было время переключить фронтальное приложение). Однако когда я переключаюсь на Mame OSX, это работает не работает (кстати, у меня также есть более старая версия Mame OSX, которая распознает нажатия клавиш, когда окно НЕ активно... но все еще не распознает неаппаратные события нажатия клавиш.) Если это вообще возможно, я хотел бы сделать так что в Mac OS и Mame OSX, поскольку аппаратное обеспечение представляет собой старый Mac Mini, И мне не удалось загрузить мой самодельный аркадный ром для загрузки на эмуляторах Windows Mame.

Как эффективно имитировать нажатие на клавиатуру в Mame OSX без физического нажатия клавиши?

Источник

Ответы (0)