我尝试在NSComboBox失去第一响应者状态时进行一些处理,因此得到“resignFirstResponder”,但是我的处理应该仅在组合框真正松开第一响应者状态时发生,而不是在用于实现文本的内部NSTextView时组合框本身获得第一响应者状态。
是否有官方方法可以检测到第一个响应者状态是从NSComboBox到其内部NSTextView? 我可以获得指向NSTextView的指针吗?并可能设置其代表?
此致
答案 0 :(得分:1)
事实上,没有“内部NSTextView”,每个NSWindow都有一个这样的NSTextView,它被重新定位到需要它的编辑控件(文本,组合框),这就是所谓的“字段编辑器”。有可能通过NSWindow委托中的windowWillReturnFieldEditor
覆盖它。
实际答案是,我们可以在组合上检测becomeFirstResponder
,然后textDidEndEditing
。
参考:Apple开发人员文档中的“文本编辑编程指南”中的“使用Field Editor”。