我试图隐藏一个NSMenuItem,但是这个方法不起作用。我的NSMenuItem不是nil (-setTitle,-setEnabled工作如预期)。IB中的插座连接正确,且-setAutoEnableItem设置为NO。
但是[item setHidden:YES];不会改变任何东西。你知道如何隐藏NSMenuItem吗?
删除并再次添加项目对我来说是没有选择的。
发布于 2012-07-16 04:12:37
NSMenuItem隐藏问题是由备用物料引起的。如果项目有一个或多个替代项目,则不能将其隐藏。但是你可以这样解决它:
例如,您希望隐藏具有替代项itemAlt2和itemCtrl2的item2。因此,让itemAlt2和itemCtrl2不是交替的,并且像这样隐藏:
[itemAlt2 setAlternate: NO];
[itemAlt2 setHidden: YES];
[itemCtrl2 setAlternate: NO];
[itemCtrl2 setHidden: YES];
[item2 setHidden: YES];当您需要可见的item2时,只需像这样使它们交替和可见:
[itemAlt2 setAlternate: YES];
[itemAlt2 setHidden: NO];
[itemCtrl2 setAlternate: YES];
[itemCtrl2 setHidden: NO];
[item2 setHidden: NO];https://stackoverflow.com/questions/11494509
复制相似问题