2012-08-03 4 views
2

Listening to mac keyboard play/pause events과 같이 미디어 키 이벤트 (Play, Pause, Next, Macbook에서는 Prev)를 받기 위해 NSApplication의 sendEvent (C# 용어로 SendEvent 메서드)를 재정의하려면 MonoMac에서 NSApplication을 서브 클래스 화해야합니다. 여기 : I로,Subclass NSApplication in MonoMac

class MainClass 
{ 
    static void Main (string[] args) 
    { 
     MyApp.Init(); 
     MyApp.Main (args); 
    } 
} 
class MyApp : NSApplication 
{ 
    public override void SendEvent (NSEvent theEvent) 
    { 
     Console.WriteLine ("event received!"); 
     base.SendEvent (theEvent); 
    } 
    public override void SetMainMenu (NSMenu aMenu) 
    { 
     Console.WriteLine ("main menu set!"); 
     base.SetMainMenu (aMenu); 
    } 
} 

그러나 (SetMainMenu 시작시 한 번 호출 할 필요가 나는 테스트 목적 추가)도 SendEvent 또는 SetMainMenu라고 : https://bitbucket.org/nkreeger/whitedragon/src/6f530c8a34a7/component/sbAppleMediaKeyController.mm

은 지금까지 나는이 코드를 함께했다 콘솔 출력을 얻지 마십시오.

올바른 방법은 무엇입니까?

+0

내가 Console.WriteLine 이외의 다른 디버깅 출력() 메소드를 시도 할 것입니다. 파일에 쓰거나 대화 상자를 팝업하거나 System.Diagnostics.Trace 메서드를 사용합니다 (사용자가 직접 추적 대상을 구현할 수 있음). – Les

+0

안녕하세요, Les 당신이 이것을 알아 낸 적이 있습니까? – ClaraU

답변