0

在我的基于文档的应用程序中,我为 [self undoManager] 调用 prepareWithInvocationTarget 和 registerUndoWithTarget。但是,在编辑菜单中,撤消和重做仍然是空白的。我可以通过调用 [[self undoManager] undo] 手动执行撤消,它可以工作。

只是为了确保,我创建了一个新项目,在其中调用 prepareWithInvocationTarget 和 registerUndoWithTarget。魔法!现在可以单击编辑菜单中的撤消/重做元素。

这可能是什么原因?我尝试在界面生成器中检查连接,但它们与我创建的新项目中的相同。知道如何解决吗?

4

1 回答 1

0

好的,我已经解决了。

问题是我有一个基于文档的项目,并且在我的文档委托中我调用了 [self undoManager]。我应该在主窗口上调用它。我已将其更改为 [mProjectWindow undoManager](因为 mProjectWindow 指向文档的主窗口),现在一切正常。

于 2012-02-18T16:01:48.497 回答