2017-01-23 4 views
0

Below-Anweisung verarbeitet alle linken Klicks in meiner Mac OS App. Ich möchte alle Klicks erfassen (links, rechts, Mitte, Rad usw.). Ich weiß, dass ich für jeden einen Monitor hinzufügen kann, aber gibt es eine Möglichkeit, all diese Ereignisse in einer Ereignismaske zu kombinieren?Übereinstimmen mehrerer NSEvents in NSEventMask

NSEvent.addGlobalMonitorForEvents(matching: .leftMouseDown , handler: { 
      (mouseEvent:NSEvent?) in ..... 

Antwort

1

mask Der Parameter ist vom Typ NSEventMask. NSEventMask entspricht OptionSet. So können Sie die Set-Syntax verwenden, um mehrere Optionen darzustellen:

NSEvent.addGlobalMonitorForEvents(matching: [.leftMouseDown, .rightMouseDown, .otherMouseDown] , handler: { 
      (mouseEvent:NSEvent?) in ..... 
Verwandte Themen