【发布时间】:2014-09-25 21:15:55
【问题描述】:
我有一个 NSPanel,上面有大约 4 个不同的 NSTextField。我正在考虑让通常的剪切、复制、粘贴、selectAll 对某些字段起作用。
我发现的最佳解决方案似乎在这里: http://web.archive.org/web/20100126000339/http://www.cocoarocket.com/articles/copypaste.html
AXCVHandler 成为 NSTextField 的子类。在界面生成器中的 NSPanel 上,如果我将单个 NSTextField 的类更改为 AXCVHandler,如上面的链接所示,那么对我来说预期的行为将是只有单个文本字段允许剪切、复制和粘贴。剩下的 3 个字段不会,因为它们仍然被分配了 NSTextField 类。
我所看到的与我的预期行为相反。我为 AXCVHandler 设置了一个 NSTextField,突然间,我的 NSPanel 上的每个 NSTextField 都在使用剪切、复制、粘贴?!
这是为什么?剩下的 3 个文本字段被分配了 NSTextField 类,但它们在我的子类中调用 performKeyEquivalent ?!
我错过了什么?这是对 firstResponder 工作原理的误解还是其他原因?
【问题讨论】:
标签: objective-c macos cocoa events nstextfield