2011-07-25 21 views
0

这里是新手OS X的开发者,虽然在iOS上有相当的经验。将NSMenu命令传输到当前窗口?

我缺少一些有关顶级NSMenu与应用程序交互方式的基本知识。我想要File-> Save命令转到当前窗口。到目前为止,我只能在应用程序委托中接收NSMenu操作。我应该跟踪那里的活动窗口并从应用程序委托调用方法吗?

+0

你想让窗口执行该方法吗? – lbrndnr

回答

2

首先,它听起来像你需要read up Mac菜单处理,因为有很多事情你需要知道,以正确处理菜单。

为了回答您的具体问题,如果菜单项具有的nil的目标,如Save菜单项,然后选择菜单处理系统走到响应链,从当前活动的控制或视图(第一响应者)开始,寻找实现该菜单项的动作选择器的对象。

如果你不明白响应者链是如何工作的,你应该read about that too,因为它是了解Mac应用程序工作原理的基础。

如果您希望窗口控制器在其窗口为主窗口时处理‑save:操作,那么只需在窗口控制器中实施‑save:操作即可。由于窗口控制器在应用程序委托之前位于响应器链中,因此将使用该方法的实现。