【发布时间】:2013-03-03 10:24:24
【问题描述】:
我正面临一个奇怪的情况。我有一个NSMenu,里面有一个子菜单。子菜单的内容以编程方式填充。在我的 validateMenuItem: 方法中,我可以看到所有正在检查的项目(父项目)以及子项目(一旦我点击子菜单),除了那些在我的自动填充子菜单中的项目。
这是为什么呢?难道我做错了什么?关于如何解决这个问题的任何想法?
【问题讨论】:
-
这些菜单项在其他情况下正常运行(即当您选择它们时,它们会触发它们的操作方法)?
-
@trojanfoe 刚刚找到答案(说实话很简单......) - 我现在就发布它。
-
@trojanfoe 所有菜单项的操作都在控制器中实现,而某个特定子菜单的子项的操作则没有。因此,不会调用
validateMenuItem:方法。 (令人沮丧......鉴于我在将它发布到 SO 之前 2 小时一直在努力解决它(然后在 10 分钟后自己回答......哈哈)) -
只是谈论一个问题通常足以让您自己解决。
-
@trojanfoe 是的。奇怪但真实..
标签: objective-c macos cocoa nsmenu