2011-05-30 62 views
1

我有许多网点和NSSearchfield的视图,如果用户在搜索字段中按下箭头,我想对网点做一些有趣的事情。我想这样做,没有子,因为我有一些问题,与其他类accesing网点在没有子类化的情况下管理NSSearchfield上的键盘事件

编辑: 我与网点的问题是,我不能将其stringValue的从我的子类改变

if ([event keyCode]==126){ 
     Myclass* c= [[Myclass alloc] init]; // the class that have the outlets 
     [c searchf];} //function that something interesting with the outlets 
+0

我不认为你可以做到这一点没有继承...什么是更确切地说,你的问题与你的IBOutlet? – jlink 2011-05-30 16:45:19

回答

4

有你可以使用的代理方法:

- (BOOL)control:(NSControl *)control textView:(NSTextView *)textView doCommandBySelector:(SEL)command { 
    if (control == yourSearchField && command == @selector(moveUp:)) { 
     // do custom stuff 
     return YES; 
    } 

    return NO; 
} 
+0

我试过你的答案与NSLog,但我什么也没有得到。除了更改我的搜索字段的名称外,我还得做其他事情。我从未使用委托方法 – 2011-05-30 16:59:19

+0

您是否设置了搜索字段的委托? – Wevah 2011-05-30 20:01:40

+0

我该怎么做? – 2011-05-30 20:10:57

相关问题