首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSTextField enter键检测或firstResponder检测

NSTextField enter键检测或firstResponder检测
EN

Stack Overflow用户
提问于 2011-06-09 15:15:31
回答 1查看 4.4K关注 0票数 6

我有两个NSTextFieldtextFieldUserIDtextFieldPassword

对于textFieldPassword,我有一个如下的委托:

代码语言:javascript
复制
- (void)controlTextDidEndEditing:(NSNotification *)aNotification

textFieldPassword具有焦点并且我按回车键时,将调用此委托。这正是我想要的。

我的问题是,当textFieldPassword有焦点并且我将焦点移动到textFieldUserID (通过鼠标或Tab键)时,controlTextDidEndEditing也会被调用。这不是我想要的。

我尝试使用controlTextDidChange通知(每次按键都会调用一次),但我不知道如何检测Enter键( [textFieldPassword stringValue]不包括Enter键)。有没有人能帮我解决这个问题?

我还试图检测textFieldUserID是否是firstResponder,但对我不起作用。下面是我尝试过的代码:

代码语言:javascript
复制
if ( [[[self window] firstResponder] isKindOfClass:[NSTextView class]] &&
    [[self window] fieldEditor:NO forObject:nil] != nil ) {
    NSTextField *field = [[[self window] firstResponder] delegate];
    if (field == textFieldUserID) {
        // do something based upon first-responder status
        NSLog(@"is true");
    }
}

我真的需要一些帮助!

EN

回答 1

Stack Overflow用户

发布于 2014-01-21 16:23:54

代码语言:javascript
复制
[passwordTextFieldCell setTarget:self];

[passwordTextFieldCell setAction:@selector(someAction:)];

- (void) someAction{

//handle

}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6289336

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档