以编程方式将checkboxcell添加到NSTableView

时间:2013-01-31 18:01:13

标签: xcode cocoa checkbox cell nstableview

我使用以下代码将单元格添加到NSTableView。但这是添加textboxcells。我需要添加CheckboxCells。有人可以告诉我我该怎么做吗?

谢谢!

//add cells
for (NSManagedObject *a in sortedArray)
{    
    NSTableColumn *newcolumn = [[NSTableColumn alloc] initWithIdentifier:[NSString stringWithFormat:@"%@",[a valueForKey:@"Name"]]];
    [[newcolumn headerCell] setStringValue:[NSString stringWithFormat:@"%@",[a valueForKey:@"Name"]]];
    [newcolumn setWidth:50];

[table addTableColumn:newcolumn];
}

1 个答案:

答案 0 :(得分:4)

复选框实现为按钮。您只需设置NSTableColumn的dataCell属性即可指示默认的dataCell。

//add cells
for (NSManagedObject *a in sortedArray)
{    
    NSTableColumn *newcolumn = [[NSTableColumn alloc] initWithIdentifier:[NSString stringWithFormat:@"%@",[a valueForKey:@"Name"]]];
    [[newcolumn headerCell] setStringValue:[NSString stringWithFormat:@"%@",[a valueForKey:@"Name"]]];
    [newcolumn setWidth:50];

    NSButtonCell * checkBox = [[NSButtonCell alloc] init];
    [checkBox setButtonType:NSSwitchButton];
    [newColumn setDataCell:checkBox];
    [table addTableColumn:newcolumn];
}