0

我有以下委托方法,它在可编辑字段中的文本更改时进行监听:

-(void)controlTextDidEndEditing:(NSNotification *)aNotification{

说,我声明了两个 NSTextField,我怎样才能找出生成通知的 NSTextField?我想在一个文本字段的文本完成编辑时执行一些代码,而在另一个文本字段的代码完成编辑时执行其他代码。

换句话说,我怎样才能获得发出通知的文本字段的名称?

谢谢!

4

2 回答 2

1

[aNotification object] 是发布通知的 NSControl(或 NSControl 子类)对象。

于 2012-04-04T09:35:39.787 回答
0

您可以使用标签并获取对象的标签字段,但首先您必须强制将对象从 Any 向下转换为 NSTextField 以便您可以访问标签属性(“任何”的对象没有“标签”属性)像这样:

let object = aNotification.object as! NSTextField

然后你可以检查标签:

if object.tag == 99 { do something }

这就是我在我现在正在处理的一些代码中解决问题的方式。

于 2017-06-07T21:12:51.067 回答