gpt4 book ai didi

objective-c - 按键和基本对象,需要 NSView 吗?

转载 作者:行者123 更新时间:2023-12-03 17:01:51 27 4
gpt4 key购买 nike

所以这是我的代码,但对我来说似乎过于简单化,这可能就是为什么它没有像我这个迷你项目的意图那样捕获用户按键的原因:

#import <Foundation/Foundation.h>
#import <Cocoa/Cocoa.h>


@interface keyObject : NSObject
- (void)mouseDown:(NSEvent *)theEvent;
@end




@implementation keyObject
- (void)mouseDown:(NSEvent *)theEvent {
NSLog(@"keypress detected!");
}

@end


int main(int argc, const char * argv[]) {
@autoreleasepool {
NSLog(@"test");
keyObject * myObject = [[keyObject alloc] init];
}
while (1) {
// Waiting for event to trigger?
}
return 0;
}

我读到,无需 NSView 即可捕获用户输入,尽管这可能会更容易?我想通过我自己的命令行程序创建一个全局热键。

最佳答案

您可以使用以下NSEvent方法:

+ (id)addLocalMonitorForEventsMatchingMask:(NSEventMask)mask
handler:(NSEvent * _Nullable (^)(NSEvent *))block

要监视按键事件,您可能应该提供NSKeyDownMask | NSKeyUpMaskNSEventMask

参见Apple documentation regarding monitoring events .

Answers to this question可能对您也有用,尽管它们涵盖系统范围的 keyDown 事件而不是您的应用程序本地事件。

关于objective-c - 按键和基本对象,需要 NSView 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36086633/

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