toa*_*tie 4 macos cocoa objective-c nsview
我在 NSView 中使用 flagsChanged 来在按下或释放修饰键时触发事件。但是,我不太明白如何在发生这种情况时获得键的实际新状态,而不是手动检查每个修饰键的状态。我目前正在使用我自己的状态数组来检查它,但这似乎是错误的并且不可靠。我该如何正确地做到这一点?
小智 6
只需根据flagsChanged:
您感兴趣的各种修饰键掩码检查传入的事件:
- (void)flagsChanged:(NSEvent *)theEvent {
if (([theEvent modifierFlags] & NSAlternateKeyMask) == NSAlternateKeyMask) {
// Do something based on the alt/option key being pressed
} else if (([theEvent modifierFlags] & NSCommandKeyMask) == NSCommandKeyMask){
// Do something based on the command key being pressed
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1622 次 |
最近记录: |