0

我的NSDocument子类采用NSTextFieldDelegate. 文档窗口包含几个NSTextField实例(所有设置为文档类的出口)。当用户编辑文本字段时,我希望通知我的文档。但是 NSTextFieldDelegate 协议中的所有方法都是从 NSTextViewDelegate 继承的,因此在它们的参数中传递 NSText* 实例,而不是NSTextField 实例。这同样适用于通知:

- (void) controlTextDidChange:(NSNotification*) notification

那么,如何找出正在编辑的众多 NSTextField 实例中的哪一个

笔记

我需要使用文档的撤消管理器正确注册撤消。我尝试实现 - (NSUndoManager *)undoManagerForTextView:(NSTextView *)aTextView 但这似乎只适用于NSTextViews,而不 NSTextField适用于s。

4

1 回答 1

3

您可以参考您的NSTextFieldas [notification object]。从文档中NSControlTextDidChangeNotification

通知对象是发布通知的 NSControl 对象。

实际的控制子类将是您的NSTextField.

于 2012-12-17T15:20:08.607 回答