Macos 选择NSTextField时,未调用controlTextDidBeginEditing

Macos 选择NSTextField时,未调用controlTextDidBeginEditing,macos,nstextfield,Macos,Nstextfield,当通过单击或按tab键选择NSTextfield时,不会调用controlTextDidBeginEditing委托方法。将设置委托并激发所有其他委托方法。处理tab按键等关键事件的任何建议都可以通过在委托方法中写入setFieldEditor:方法来处理。为此要求此方法已足够 另一种方法是重写NSTextfield类并编写keyDown:方法 在这里发布代码片段。另一个建议是调试并验证文本字段是否成为第一响应者。嗨,我后来发现了这个问题。。。实际上,这个方法只有在我们开始编辑文本或在文本字段中

当通过单击或按tab键选择NSTextfield时,不会调用controlTextDidBeginEditing委托方法。将设置委托并激发所有其他委托方法。处理tab按键等关键事件的任何建议都可以通过在委托方法中写入
setFieldEditor:
方法来处理。为此要求此方法已足够


另一种方法是重写
NSTextfield
类并编写
keyDown:
方法

在这里发布代码片段。另一个建议是调试并验证文本字段是否成为第一响应者。嗨,我后来发现了这个问题。。。实际上,这个方法只有在我们开始编辑文本或在文本字段中键入文本时才会被激发…否则它不会被激发…现在我正在搜索另一个方法,它在文本字段本身被选中时被激发。。。通过tab或mousedown您可能正在寻找此方法
setFieldEditor:
我前面的注释中的方法应该足够了。每当响应程序上发生键事件时,都应调用
keyDown:
方法。如果您正在重写
NSTextfield
,则可以尝试实现“becomefirstresponder”方法。非常感谢……它起了作用。。你能把它作为答案吗