cocoa - 从 NSMenuItem 获取 NSPopUpButton

标签 cocoa nsmenuitem nspopupbutton

我的应用程序使用 -validateMenuItem: 方法来验证菜单项。 但我需要根据弹出窗口中的内容验证不同的菜单项。

我希望有一种方法来获取弹出窗口的标签,但在浏览文档后我似乎找不到方法......有什么想法吗?

编辑: 我认为这需要更多上下文...我的模型对象是 JDBCSyncer (将一个数据库与另一个数据库同步),我的窗口是一个设置窗口,我需要根据菜单项的标题是否在字符串数组中来验证菜单项它代表表中的各个字段。这个想法是您从弹出窗口中选择字段。

最佳答案

我的脑海中没有一个很好的答案,但是沿着这些思路怎么样:

- (BOOL)validateMenuItem:(NSMenuItem *)menuItem
{
    NSMenu *menu = [menuItem menu];
    if (menu == [popUpButton1 menu]) {
        return YES;
    }
    else if (menu == [popUpButton2 menu]) {
        return NO;
    }
    else (menu == [popUpButton3 menu]) {
        return YES;
    }
    else {
        return NO;
    }
}

关于cocoa - 从 NSMenuItem 获取 NSPopUpButton,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2173807/

相关文章:

swift - 使用 Swift 更改 NSMenuItem 标题

macos - 设置 NSMenuItem 的字体颜色在突出显示时交替显示

cocoa - 某些等效键不能用于 NSMenuItem

xcode - 如何避免 Xcode 4 添加宽度约束到 NSPopUpButton?

objective-c - 根据 NSPopUpButton 设置 NSTableViewCell 上的内容

cocoa - 连接套件基础知识

macos - Swift IBOutlets 在 awakeFromNib 中为零(xcode 6.1.1 osx 10.10.1)

iphone - 在 iPhone 模拟器中测试音乐库

objective-c - 以编程方式将菜单+项目添加到 NSPopupButton

objective-c - NSTableview 改变高亮颜色