根据协议引用,当任何文本显示对象需要字段编辑器时,都应该为其调用windowWillReturnFieldEditor。实际上,我的窗口委托收到了对文本字段、按钮、组合框等方法的调用-但从未对文本视图调用过。
这是正常的吗?NSTextView是否拥有自己的字段编辑器,并且从不请求它?或者我错过了什么?
- (id)windowWillReturnFieldEditor:(NSWindow *)sender toObject:(id)anObject {
if ([anObject isKindOfClass:[NSTextView class]])
printf("\nwinWillRtnFldEdtor called for some textview."); // never happens
}发布于 2011-06-02 04:59:12
太棒了。查看字段编辑器的内存地址,很明显,每个文本视图确实有自己不同的字段编辑器(不像文本字段,它们共享一个公共字段编辑器),因此文本视图不会请求字段编辑器,也不会调用此方法。
这很不幸,因为我需要特殊的例程来设置多个不同的文本视图,然后才能激活它们。(使用文本字段更容易做到这一点。)我能想到的最好的解决办法是在文本视图中添加一个类似标签的属性。
https://stackoverflow.com/questions/6204778
复制相似问题