Objective c 不同笔尖中的主菜单
我有一个带有ManMenu.xib的Cocoa应用程序,其中存储了主菜单,并在几个xib中处理我的应用程序的不同任务。那么,如何让我的sub-XIB或更确切地说是他们的NSViewControllerController从菜单接收操作 我有一个想法,但我不知道它是否正确:我将NSViewController子类化,并添加一些操作,如-IBActionundo或-IBActionredo,使用它的实例作为文件所有者。此外,我添加了一个指向我的应用程序委托的指针,指向实际视图,或者更确切地说是它的控制器,菜单会将操作发送到该指针Objective c 不同笔尖中的主菜单,objective-c,macos,cocoa,Objective C,Macos,Cocoa,我有一个带有ManMenu.xib的Cocoa应用程序,其中存储了主菜单,并在几个xib中处理我的应用程序的不同任务。那么,如何让我的sub-XIB或更确切地说是他们的NSViewControllerController从菜单接收操作 我有一个想法,但我不知道它是否正确:我将NSViewController子类化,并添加一些操作,如-IBActionundo或-IBActionredo,使用它的实例作为文件所有者。此外,我添加了一个指向我的应用程序委托的指针,指向实际视图,或者更确切地说是它的控
明智的解决方案?您应该将菜单项连接到第一响应者。然后,他们的行动信息将沿着响应者链传播,直到到达响应他们的东西 您需要将视图控制器设置为响应器链中其他内容的下一个响应器,以确保它位于响应器链中。我建议使用窗口控制器 说到窗口控制器,您可能应该在那里而不是在视图控制器中处理撤消。如果同一窗口中的不同视图具有不同的撤消列表,则会造成混淆。我能想到的唯一例外是,如果受控视图与文档选项卡相对应,比如在Photoshop或Xcode中