グローバルイベントを監視しようとしていますので、グローバルモニタを追加しようとしました。しかし、私はこのモニターから情報を得ることができませんでした。イベントでアクティブになりますが、NULL
を返します。"addGlobalMonitorForEventsMatchingMask"がヌルを返します
[NSEvent addGlobalMonitorForEventsMatchingMask:(NSLeftMouseDownMask) handler:^(NSEvent *incomingEvent){
NSLog(@"Window Number :%@",[[incomingEvent window] windowNumber]);
}];
このコードは、プログラムで(id)init
方法です。ウィンドウをクリックするかイベントを発生させるたびに、ウィンドウ情報としてNULLのNSLOGメッセージが表示されます。次のように サンプル出力は次のとおりです。
Window Number: (null)
私は私が間違っているつもりだどこか分かりません。誰も私を説明できますか?
'windowNumber' seamsは' NSInteger'を返すので、オブジェクトを必要とする '%@'書式文字列を使うべきではありません。 '(null)'として出力するのは、 'windowNumber'が0を返し、NULLポインタとして解釈されるためです。 –