如何在Mac OS中启用NSMenuItems?

时间:2018-01-12 00:42:42

标签: swift macos nsmenuitem

我在swift中创建了一个Mac OS应用程序。当我创建自己的自定义菜单项时,它们会在应用程序的整个生命周期内保持禁用状态。如何启用这些菜单项以使其可单击? 链接到示例图片 - https://i.imgur.com/3y143y1.jpg

编辑:我发现在窗口控制器中设置IBActions,然后通过响应器链访问它们。

1 个答案:

答案 0 :(得分:0)

我一直都犯这个错误。 ;)

要在Cocoa中启用菜单项,您必须设置容器菜单的autoenablesItems=false,然后手动启用/禁用各个项目。

或者您必须设置菜单项的操作和目标属性,并确保在响应程序链的相应-validateUserInterfaceItem:处理程序中识别这些属性。

如果您没有执行上述任何一项操作,默认情况下会启用自动启用功能,并且您的所有项目都没有有效的操作目标,因此菜单会禁用所有项目。