Я пытаюсь передать нажатие клавиши '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 без физического нажатия клавиши?