捕获NSTableView上的撤消/重做键事件

时间:2011-01-26 04:31:19

标签: cocoa events macos nstableview undo

我需要在NSTableView中捕获undo / redo key命令,然后将其转发给托管对象上下文的undo manager。我试过覆盖-keyDown,但这很难导航。我真的需要一个解决这个问题的国际化解决方案,而不是围绕使用命令键修饰符掩码检查“z”键。

有没有办法设置我的tableview来寻找标准的“undo”键绑定?有什么想法吗?

2 个答案:

答案 0 :(得分:2)

在包含NSTableView的窗口的委托中实现windowWillReturnUndoManager。然后在那里返回对象上下文的撤消管理器。然后您的表格视图将能够接收这些事件。

[NSWindowDelegate windowWillReturnUndoManager:]

答案 1 :(得分:0)

您通常在Cocoa应用程序中使用NSUndoManager来处理撤消/重做事件。有关更多信息,请参阅http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSUndoManager_Class/Reference/Reference.html