Wie greife ich auf (anhören), um die Multimedia-Tasten (Play / Pause) in Mac OS X?
Frage
Ich möchte ein Singvogel schreiben Erweiterung der Multimedia-Tasten auf allen Apple Mac OS X-Plattformen bindet. Leider ist dies nicht eine einfache Google-Suche und ich kann keine Dokumente nicht gefunden.
Kann mir jemand Ressourcen zeigen diese Schlüssel auf den Zugriff oder mir sagen, wie es zu tun?
ich umfangreiche Programmiererfahrung haben, aber dies wird mein erstes Mal Codierung in beiden MacOSX und XUL
Bitte beachten Sie, dass diese nicht regelmäßig wichtige Ereignisse. Ich nehme an, es muss eine andere Art von Systemereignis sein, die ich benötigen, Haken oder zu abonniert haben.
Lösung
Dieser Blog-Eintrag hat eine Lösung:
http: // www .rogueamoeba.com / utm / posts / Artikel / mediaKeys-2007-09-29-17-00.html
Sie müssen im Grunde NSApplication
Unterklasse und überschreiben sendEvent
,
Suche nach speziellen Scan-Codes. Ich weiß nicht, was Singvogel ist, aber wenn es
ist
keine reale Anwendung dann bezweifle ich, Sie in der Lage sein werden, dies zu tun.
Vielleicht können Sie eine einfache Kategorie mögen genügen:
@implementation NSApplication(WantMediaKeysCategoryKBye)
- (void)sendEvent: (NSEvent*)event
{
// intercept media keys here
}
@end
Andere Tipps
Sind Sie sicher, Ihre Multimedia-Tasten arbeiten in Ihrer Installation? Jede einzelne Taste erzeugt einen Scan-Code, der in einen Schlüsselcode vom Kernel übersetzt. Wenn xev Sie keycodes nicht zeigen, ich denke, diese Scan-Codes nicht abgebildet werden und so hat der Kernel keine Kenntnis von ihnen.
http://gentoo-wiki.com/HOWTO_Use_Multimedia_Keys hat eine schöne Erklärung Tastencodes zu finden, und bietet Hilfe, wie Sie roh-Scan-Codes finden und übersetzen sie in Schlüsselcodes.
xev
könnte Ihnen helfen, wenn Sie herausfinden möchten, welche Codes werden eingesandt von Multimedia-Tasten.