试图查看NSCell的NSTextView的委托

时间:2014-12-11 13:04:23

标签: macos cocoa nstextview

我有一段时间试图弄清楚如何获取NSCell-NSFormCell和NSTextFieldCell的文本字段编辑器(NSTextView)的地址? NSCell没有访问它的属性。我确实发现编辑器在实际编辑字段之前没有分配。

我想设置委托,以便我可以捕获自动完成的击键。

1 个答案:

答案 0 :(得分:1)

默认情况下,每个窗口都有一个字段编辑器。即使控件或单元格使用自定义字段编辑器,它仍然由窗口提供。您可以调用-[NSWindow fieldEditor:forObject:]来获取给定控件的字段编辑器。

但是,字段编辑器的委托始终设置为代表其工作的控件。将委托设置为其他东西可能会破坏事物。因此,您通常会使用控件的自定义子类并在那里实现您的委托方法。

最后,控制完成通常使用文本视图委托中的-textView:completions:forPartialWordRange:indexOfSelectedItem:来完成,而不是通过捕获击键来完成。

相关问题