作者zonble (zonble)
看板MacDev
标题Re: [问题] MAC APP Event使用问题
时间Fri Nov 19 18:14:08 2010
※ 引述《roinla (GARFIELD~)》之铭言:
: 小弟最近cocoa刚入门没多久,对event的使用方式一直很不清楚,fucntion都设定了
: 就是一直没反应。
: 我开了一个@interface XXX:NSObject的物件,
: 宣告了-(void)keyDown:(NSEvent *)theEvent
: {
: NSLog(@"Event Test");
: }
: build APP出来时,无论如何keyin任何安键都没反应都不会跑进这个fucntion,
: 想请教一下是不是那里出了问题?
: 谢谢~新手发问q"q~谢谢大家不吝指教
这些事件都是来自 NSResponder,所以,要接收事件,首先要确定
你的 Object 存在於 responder chain 当中,例如,你想要用来接收
键盘事件的 object,到底是什麽?是 View?还是 Controller?
如果是一个 view,首先你必须要有办法把这个 view 变成 first
responder。所以,就需要实作 - (BOOL)acceptsFirstResponder
回传 YES。
--
zonble.net
cocoa.zonble.net
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.42.196.227
1F:推 roinla:请问,除了想要接受事件的东西除了NSview,NScontrol之外 11/22 08:55
2F:→ roinla:也可以是textfield或tableview、NSbutton之类的吗? 11/22 08:56
3F:→ zonble:这些物件都是继承自 NSControl 的 11/22 20:07
4F:→ zonble:但是如果是在这些物件中的文字框打字,要注意 field editor 11/22 20:07
5F:→ zonble:的问题 11/22 20:07
6F:推 roinla:firstresponder已设定好,field editor会有什麽问题吗? 11/23 10:34
7F:→ roinla:field editor我有用过textdidchange之类的,可以抓内容变化 11/23 11:08
8F:→ roinla:但是,跟我有要触发keydown有什麽关连吗?~请指教,谢谢 11/23 11:08