【问题标题】:Using arrow keys in cocoa?在可可中使用箭头键?
【发布时间】:2023-04-01 05:25:02
【问题描述】:

我对此进行了一些研究,发现 this 问题。我实现了那里使用的代码,但什么也没发生。这是我正在使用的确切代码:

.h 文件

#import <Cocoa/Cocoa.h>


@interface Test : NSView {

}

-(void)keyUp:(NSEvent*)event;
-(void)keyDown:(NSEvent*)event;

@end

.m 文件

#import "Test.h"


@implementation Test

- (void)keyDown:(NSEvent*)event {
    NSLog(@"A key has been pressed");
    switch( [event keyCode] ) {
        case 126:       // up arrow
        case 125:       // down arrow
        case 124:       // right arrow
        case 123:       // left arrow
            NSLog(@"Arrow key pressed!");
            break;
        default:
            NSLog(@"Key pressed: %@", event);
            break;
    }
}

@end

怎么了?有什么我必须添加到界面的吗?

编辑:嗯,实际上确实发生了一些事情。我的电脑对我发出哔哔声。仅此而已。

【问题讨论】:

标签: objective-c cocoa arrow-keys nsevent


【解决方案1】:

实现acceptsFirstResponder:

- (BOOL)acceptsFirstResponder
{
    return YES;
}

此外,请确保您的视图是第一响应者(例如,通过在视图内部单击)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-18
    • 2013-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多