Simulation von Tastendruckereignissen unter Mac OS X
Ich schreibe eine App, in der ich Tastendruckereignisse auf einem Mac mit einem Code simulieren muss, der für jede Taste steht. Es scheint, dass ich das verwenden mussCGEventCreateKeyboardEvent
Funktion zum Erstellen des Ereignisses. Das Problem ist, dass diese Funktion einen Mac-Schlüsselcode benötigt und ich einen Code habe, der den spezifischen Schlüssel darstellt. So erhalte ich zum Beispiel:
KEY_CODE_SHIFT
oderKEY_CODE_A
- Dies sind beide numerischen Konstanten, die irgendwo definiert sind.
Ich muss diese Konstanten nehmen und in verwandelnCGKeyCode
Werte.
Mein aktueller Versuch verwendet Code ähnlich wiediese SO Frage. Das Problem ist, dass es nur für druckbare Zeichen funktioniert. Wenn alles andere fehlschlägt, bin ich nicht über das harte Kodieren der Konvertierung hinaus, aber das würde bedeuten, dass ich eine Tabelle möglicher CGKeyCode-Werte benötige, die ich noch nicht finden konnte.
Irgendwelche Ideen?