差分

ナビゲーションに移動 検索に移動

Xamarin.MacでGlobal Event Monitorを使いキー入力を監視する

472 バイト追加, 2015年10月14日 (水) 06:24
NSEventにNSEvent.AddGlobalMonitorForEventsMatchingMaskを叩いて監視対象のイベントの種類と発生時に呼ばれるイベントハンドラを設定するだけである。
非常に簡単。
 
当初はNSEventMask.KeyDownで実装してみたが、これは文字キーの入力でしかイベントが発生せず、[[Shiftキー]]や[[Ctrlキー]]などを単品で押した場合には何も起こらない。
実装中のアプリでは[[Ctrlキー]]単品を[[ショートカットキー]]としており上記ではダメであった。
そこでNSEventMask.FlagsChangedに変えて実装してみたところ[[Ctrlキー]]単品でも上手くいった。
 
<source lang="csharp">
public override void DidFinishLaunching(NSNotification notification)
匿名利用者

案内メニュー