我的NSDocument
子类采用NSTextFieldDelegate
。文档窗口包含多个NSTextField
实例(所有实例都设置为文档类的出口)。当用户编辑文本字段时,我希望通知我的文档。但是NSTextFieldDelegate协议中的所有方法都继承自NSTextViewDelegate,因此在其参数 NOT NSTextField实例中传递NSText *实例。这同样适用于通知:
- (void) controlTextDidChange:(NSNotification*) notification
那么,我如何找出正在编辑的许多NSTextField实例?
注意
我需要使用文档的撤消管理器正确注册undos。我试过实施
- (NSUndoManager *)undoManagerForTextView:(NSTextView *)aTextView
但这似乎只适用于NSTextView
s, NOT NSTextField
s。
答案 0 :(得分:3)
您可以NSTextField
作为[notification object]
的引用。来自NSControlTextDidChangeNotification
的文档:
通知对象是发布的NSControl对象 通知。
实际控制子类将是您的NSTextField
。