gpt4 book ai didi

objective-c - 如何禁用 NSMenu 中某些 View 的项目?

转载 作者:行者123 更新时间:2023-12-03 09:23:28 25 4
gpt4 key购买 nike

我有一个应用程序,其中三个 View 显示在同一窗口中。

当用户进入查看 1 时,我希望启用主菜单的某些项目,当用户进入查看 2 其他项目时,以及当进入查看 3 时,我希望禁用所有项目。

我该怎么做?

最佳答案

阅读非正式协议(protocol) NSMenuValidation 的文档:它说:此非正式协议(protocol)允许您的应用程序更新 NSMenuItem 对象的启用或禁用状态。它只声明了一种方法,validateMenuItem:因此,在 MenuItem 的目标对象中,您必须实现:

- (BOOL)validateMenuItem:(NSMenuItem *)menuItem
{
// what is the item?
NSLog( @"validate %@", [menuItem title] ); // useful for testing
// return something like this:
if( [ [menuItem title] isEqualToString:@"Show something"] ){
return ! [view3 userIsHere];
}
return YES;
}

在此方法的文档中,您可以找到另一个示例。

关于objective-c - 如何禁用 NSMenu 中某些 View 的项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26557693/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com