Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 如何按代码配置NSButtonCell?_Objective C_Macos_Cocoa - Fatal编程技术网

Objective c 如何按代码配置NSButtonCell?

Objective c 如何按代码配置NSButtonCell?,objective-c,macos,cocoa,Objective C,Macos,Cocoa,如何按代码配置NSButtonCell?我在文档中找不到任何示例或帮助 到目前为止,我已经做到了: cell = [[NSButtonCell alloc] init]; [tableColumn setDataCell:cell]; 如何指定我想要一个复选框按钮 如何将其绑定到数据源 谢谢 更新:(按钮尚未启用) 也许有点令人困惑,在NSTableView中,绑定发生在NSTableColumn级别,而不是NSCell级别。因此,您可以在表格列上调用-(void)bind:toO

如何按代码配置NSButtonCell?我在文档中找不到任何示例或帮助

到目前为止,我已经做到了:

   cell = [[NSButtonCell alloc] init];
   [tableColumn setDataCell:cell];
  • 如何指定我想要一个复选框按钮
  • 如何将其绑定到数据源 谢谢

    更新:(按钮尚未启用)


    也许有点令人困惑,在
    NSTableView
    中,绑定发生在
    NSTableColumn
    级别,而不是
    NSCell
    级别。因此,您可以在
    表格列
    上调用
    -(void)bind:toObject:withKeyPath:options:
    ,可能使用以下类似的内容:

    [tableColumn bind: NSValueBinding toObject: theViewController withKeyPath: @"representedObject.foo.bar" options: @{ ... }];
    
    要使单元格看起来像复选框,请执行以下操作:

    [cell setButtonType: NSSwitchButton];
    

    希望这有帮助。

    谢谢:最后一个问题:按钮不可单击,已禁用。绑定工作正常,但我无法与之交互。可能有很多事情。。。绑定tableColumn时,您可能希望尝试旋转
    nsConditionAllySetSetEnableBindingOption
    nsConditionAllySetEnabledBindingOption
    。这些将通过
    选项:
    dictionary参数传入(带值)。我已经在我的问题中添加了我添加的行,这仍然是同样的困难,因为我自己无法调试它。。。很抱歉我的建议是只使用IB设置一个表,该表的工作方式与您希望动态配置的表在本例中的工作方式相同,然后在调试器中查看如何绑定列(即使用哪些选项)
    -infoForBinding:
    在这方面是您的朋友。很抱歉,它实际上已经工作了。我不知道为什么以前它被禁用了,我已经删除了所有绑定选项,一切正常。
    [cell setButtonType: NSSwitchButton];