在外部单击时调用要发送的NSTextField操作

时间:2013-01-18 21:31:47

标签: objective-c xcode cocoa

我有一个已编辑过的NSTextField。如果按Enter键,则按预期调用操作。

当我点击NSTextField之外的任何地方时,我希望产生相同的效果。辞职第一响应者可能是关键,但只有当某些元素被点击/选择/聚焦(例如另一个NSTextField或NSTableView)时才会发生,而其他元素不会发生(例如NSButton或NSSlider)。

可以使用[[self window] makeFirstResponder:nil]取消设置NSTextField焦点,但在每个对象的操作中调用此行太难看了。

有更好的解决方案吗?

1 个答案:

答案 0 :(得分:0)

您需要深入研究Cocoa事件处理指南。 好好看看NSResponder。 许多对象继承自NSResponder,包括NSWindow和NSApplication。 猜测你想要完成什么,在视图不在焦点时进行编辑,你可能还想在应用程序终止时进行观察通知,进入后台等等......

相关问题