2016-03-04 62 views
2

我正在向NSMenu添加一個NSMenuItem,並且我能夠成功檢測並處理單擊事件。不過,我想添加第二個選項,並檢測用戶是否點擊菜單項按住SHIFTSwift NSMenuItem檢測移位點擊

let menuItem = myMenu?.submenu?.addItemWithTitle("Click me", action: "itemClicked:", keyEquivalent: "") 

有沒有辦法做到這一點?我看着keyEquivalent,但我沒有看到如何讓這個工作。

感謝

+0

全球留意shift /命令鍵可以工作,但是當用戶瀏覽子菜單時這個代碼不會被執行,所以這不起作用@leodabus – VTS12

+0

感謝你的回覆,我試着將它改爲addLocalMonitorForEventsMatchingMask,這仍然不起作用。不知道爲什麼這是downvoted – VTS12

+0

任何想法@LeoDabus? Thx再 – VTS12

回答

3

感謝@LeoDabus一些幫助,但我能在事件處理程序用下面的代碼來解決這個我NSMenuItem:

if let event = NSApp.currentEvent { 
    if event.modifierFlags.contains(.ControlKeyMask) { 
     // success! 
    } 
} 

編碼快樂

+0

也應該工作'如果NSApplication.sharedApplication()。currentEvent?.modifierFlags.contains(.ControlKeyMask)== true { –