XCode以神秘的方式工作(至少对我而言)。 我只想在我的应用程序中创建一个“首选项”窗格。当我运行我的应用程序时,库存菜单栏出现(Apple,MyApp,文件,编辑...),“首选项”菜单项显示为灰色。这是有道理的,因为我还没有开始玩它。
我如何添加/删除/激活/取消激活菜单项?我不是在谈论添加任何新内容,只是使用应该存在的东西。
提前致谢。
答案 0 :(得分:1)
NSMenu默认启用“自动启用项目”。这意味着如果菜单项没有连接它的动作消息,它将显示为灰色。因此,在您的情况下,您只需将“首选项”菜单项的“已发送操作”设置为显示您的首选项窗口的任何操作。这可以挂钩到AppDelegate的某种showPreferencesWindow:
方法,或直接挂钩到窗口控制器的showWindow:
方法。
要动态启用/禁用菜单项,最好的方法是实现NSUserInterfaceItemValidation协议,该协议记录良好here
编辑:您的应用程序的菜单栏项目位于MainMenu.xib文件中。菜单栏在左侧显示为“主菜单”对象(如果您使用的是Xcode 4)只需单击要修改它们的项目,您就可以像任何UI对象一样按Ctrl +拖动连接。