Objective c NSApplication主菜单返回零

Objective c NSApplication主菜单返回零,objective-c,cocoa,nsmenu,nsapplication,Objective C,Cocoa,Nsmenu,Nsapplication,我遇到的问题是,我无法以编程方式将菜单添加到我的应用程序中 这就是我所处的位置: 应用程序内代理 ApplicationdFinishLaunching: 创建一个窗口,并使关键和秩序的前面 编辑:(如果我在这里记录[NSApplication sharedApplication]。主菜单打印(空))无论如何 创建NSMenu对象和[[NSApplication sharedApplication]setMainMenu:myMenu] 还尝试了[[NSApplication sharedApp

我遇到的问题是,我无法以编程方式将菜单添加到我的应用程序中

这就是我所处的位置:

应用程序内代理 ApplicationdFinishLaunching:

创建一个窗口,并使关键和秩序的前面

编辑:(如果我在这里记录[NSApplication sharedApplication]。主菜单打印(空))无论如何

创建NSMenu对象和[[NSApplication sharedApplication]setMainMenu:myMenu] 还尝试了[[NSApplication sharedApplication]设置菜单:myMenu]

构建/运行

菜单不在那里

编辑2: (如果仍然不理解:)


制作一个osx应用程序,删除菜单对象,运行,你仍然会看到一个菜单上面有你的应用程序的名称,你点击它,它会变成蓝色,但没有子菜单,现在我如何获得指向它的指针

由于OSX菜单符合Aqua布局,因此无法执行此操作。你有什么理由要把它完全移除吗

这可能是一场噩梦,原因如下:

1) 在标准的“Aqua菜单”中,您有类似于“服务”的菜单,它们由系统而不是应用程序处理。 2) 苹果公司对他们的设计指南很明确,菜单也没有提到,我很怀疑苹果公司是否希望你改变Aqua的布局

我记得有一次,在一次讨论中,我提到了setAppleMenu等。。。但我想那是在老虎时代

编辑您将无法获取“指针”;使用记录在案的API,它是系统驱动的,而不是应用程序驱动的,即符合Aqua

就我个人而言,我会删除沙盒应用程序中可以更改的所有菜单项,即在User Land中,然后自己添加/删除各种菜单项