当TextField成为第一响应者时,`controlTextDidEndEditing`被触发

时间:2013-02-22 09:07:29

标签: cocoa nstextfield first-responder

我正在尝试通过实施NSTextField的{​​{1}}方法来检测用户何时完成NSTextFieldDelegate的修改。但问题是,在最初制作窗口的controlTextDidEndEditing:第一响应者时,会立即触发NSTextField通知。我在一个非常简单的测试应用程序中尝试了这个并确认结果。我真的很感激为什么会出现这种情况以及如何检测textField何时失去焦点。

enter image description here

1 个答案:

答案 0 :(得分:0)

由于文本字段是第一个Responder,selectText:message也将发送到textField,这将导致它结束编辑。如果您不希望此行为将NO设置为textField的可选属性。

- (void)selectText:(id)sender;

结束编辑并选择接收器的全部内容(如果可选)。