gpt4 book ai didi

objective-c - 在 keyDown 事件中获取 modifierFlags 而无需同时按下非修饰键!

转载 作者:太空狗 更新时间:2023-10-30 03:50:57 25 4
gpt4 key购买 nike

我在 NSDocument 应用程序中对 NSWindow 进行了子类化,以便接收 keyDown 事件。

我在我的子类中使用了以下代码...

- (void)keyDown:(NSEvent *)theEvent {

NSLog(@"keyDown!");

if ([theEvent modifierFlags] & NSAlternateKeyMask) {
NSLog(@"Alt key Down!");
}
else
[super keyDown:theEvent];
}

当按下非修饰键时,我会收到按键事件!例如,当我按 alt+z (alt+non-modifierkey) 时,我也收到“Alt 键按下”。

这里的问题是,我想在单独按下 alt/option 键时处理事件,而不与其他键组合,并且 -keyDown: 不会被调用!我错过了什么?

谢谢...

最佳答案

您可以单独使用 Alt/Option 键 in -flagsChanged:而不是 -keyDown:

-(void)flagsChanged:(NSEvent*)theEvent {
if ([theEvent modifierFlags] & NSAlternateKeyMask) {
NSLog(@"Alt key Down (again)!");
}
}

关于objective-c - 在 keyDown 事件中获取 modifierFlags 而无需同时按下非修饰键!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4101669/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com