【发布时间】:2010-07-07 08:03:51
【问题描述】:
当 NSTextField 通过按 Tab 键失去焦点时,我似乎找不到获得通知的方法。单击另一个控件或按 Enter 时,我会得到一个不错的 textDidEndEditing,但如果我通过按 Tab 键更改焦点则不会。
还为此目的尝试拉出 KeyDown 和 doCommandBySelector,但我一无所获。
有什么想法吗?
提前致谢
编辑:
忘了提,但我也试过 resignFirstResponder。这是我试过的代码:
- (BOOL)resignFirstResponder
{
NSRunAlertPanel(@"", @"Lost Focus",@"OK", nil, nil);
return [super resignFirstResponder];
}
- (BOOL)becomeFirstResponder
{
NSRunAlertPanel(@"", @"Got focus",@"OK", nil, nil);
return [super becomeFirstResponder];
}
奇怪的是,这里发生的情况是,当获得焦点时,becomeFirstResponder 和 resignFirstResponder 都被一个接一个地调用。但是当将焦点从控件上移开时,两者都不是。
【问题讨论】:
标签: cocoa focus nstextfield