gpt4 book ai didi

objective-c - 如何在视频游戏风格的 Cocoa 应用程序中收集按键输入?

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

我正在开发一个简单的 Cocoa 应用程序,让方 block 像视频游戏一样在屏幕上移动。我需要检测按键,但我不会像对话框那样有文本输入字段。

如何在没有文本控件的情况下获得按键?特别是,我需要获取箭头键。

最佳答案

在您的游戏 View 中,定义 keyUp 和 keyDown 方法:

@interface MyView : NSView
-(void)keyUp:(NSEvent*)event;
-(void)keyDown:(NSEvent*)event;
@end

@implementation MyView

-(void)keyUp:(NSEvent*)event
{
NSLog(@"Key released: %@", event);
}

-(void)keyDown:(NSEvent*)event
{
// I added these based on the addition to your question :)
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

请参阅 NSView 的文档和 NSEvent获取更多信息。请注意,keyDown 和 keyUp 事件实际上是在 NSResponder 上定义的, NSView 的父类(super class)。

关于objective-c - 如何在视频游戏风格的 Cocoa 应用程序中收集按键输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/275088/

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