如何在界面构建器中访问我的应用程序中的菜单栏

时间:2011-10-28 22:25:04

标签: cocoa xcode4

XCode以神秘的方式工作(至少对我而言)。 我只想在我的应用程序中创建一个“首选项”窗格。当我运行我的应用程序时,库存菜单栏出现(Apple,MyApp,文件,编辑...),“首选项”菜单项显示为灰色。这是有道理的,因为我还没有开始玩它。

我如何添加/删除/激活/取消激活菜单项?我不是在谈论添加任何新内容,只是使用应该存在的东西。

提前致谢。

1 个答案:

答案 0 :(得分:1)

NSMenu默认启用“自动启用项目”。这意味着如果菜单项没有连接它的动作消息,它将显示为灰色。因此,在您的情况下,您只需将“首选项”菜单项的“已发送操作”设置为显示您的首选项窗口的任何操作。这可以挂钩到AppDelegate的某种showPreferencesWindow:方法,或直接挂钩到窗口控制器的showWindow:方法。

要动态启用/禁用菜单项,最好的方法是实现NSUserInterfaceItemValidation协议,该协议记录良好here

编辑:您的应用程序的菜单栏项目位于MainMenu.xib文件中。菜单栏在左侧显示为“主菜单”对象(如果您使用的是Xcode 4)只需单击要修改它们的项目,您就可以像任何UI对象一样按Ctrl +拖动连接。