【问题标题】:disabled NSMenuItem禁用 NSMenuItem
【发布时间】:2011-05-30 06:51:47
【问题描述】:

我以编程方式创建了一个 NSMenuItem,但它已被禁用。如果我重写 validateMenuItem: 方法并为所有项目返回 YES,则菜单项可以正常工作。

当我告诉菜单 autoEnableItems 并且不覆盖 validateMenuItem: 方法时,为什么它不会被启用?

NSMenuItem *menuItem = [[NSMenuItem alloc] initWithTitle:label action:@selector(methodToLogSomething:) keyEquivalent:@""];
menuItem.representedObject = representedObject;
[menuItem setTarget:self];
[menu insertItem:menuItem atIndex:[[menu itemArray] count]-1];
[menuItem release];
[menu setAutoenablesItems:YES];

【问题讨论】:

    标签: cocoa nsmenuitem


    【解决方案1】:

    如果菜单项的目标和操作设置不正确,菜单项似乎会保持禁用状态。就我而言,我忘记了选择器末尾的:

    【讨论】:

    • 我忘记通过setTarget 设置目标。也没有正确设置。谢谢!
    • 如果您尝试禁用某些菜单项,此答案也会有所帮助
    • 花了几个小时试图解决这个问题,谢谢大家!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多