我有一个基于文档的Cocoa应用程序,其中包含一个TextView,我想捕获它上面的点击事件,所以我试图拦截窗口事件,如mouseDown,mouseUp等,然后将它们与我的TextView相关联。
我尝试了两件事情:
1. 我使TextView成为文档窗口的初始第一响应者,并在我的文档类中覆盖了mouseDown事件,但是没有生效。
2. 我子类化了NSWindow并重写了mouseDown,并将该子类设置为我的文档xib中的Window类。但是那个事件也没有生效。
我注意到Window的代理已经设置为我的File's Owner,也就是我的NSDocument子类。如果我的文档子类是窗口的代理,为什么事件不会在我的NSDocument上触发呢?