作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我一直在 swift 中创建一个 Mac OS 应用程序。当我创建自己的自定义菜单项时,它们在应用程序的整个生命周期中保持禁用状态。如何启用这些菜单项以使其可单击?链接到示例图像 - https://i.imgur.com/3y143y1.jpg
编辑:我发现在窗口 Controller 中设置 IBActions,然后通过响应者链访问它们是有效的。
最佳答案
我经常犯这个错误。 ;)
要在 Cocoa 中启用菜单项,您必须设置容器菜单的 autoenablesItems=false
,然后手动启用/禁用各个项目。
或者您必须设置菜单项的操作和目标属性,并确保响应程序链中相应的 -validateUserInterfaceItem:
处理程序能够识别这些属性。
如果您不执行其中任何一项操作,则默认情况下会启用自动启用功能,并且您的所有项目都没有有效的操作目标,因此菜单会将它们全部禁用。
关于swift - 如何在 Mac 操作系统中启用 NSMenuItems?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48217988/
我是一名优秀的程序员,十分优秀!