如何仅更新NSTableView中的特定列

时间:2010-09-07 17:36:48

标签: objective-c

我有一个NSTableView,有两列。每当我向表中添加数据时,两列都显示相同的数据。我如何只更新特定列?

我正在使用Mac Dev btw。

这是我正在使用的代码:

- (id)tableView:(NSTableView *)streamView objectValueForTableColumn:(NSTableColumn     *)messageCol row:(int)row
{
return [[stream respond] objectAtIndex:row];
}

感谢。

1 个答案:

答案 0 :(得分:1)

检查要求您在tableView:objectValueForTableColumn:row:的实施中填写哪一列。这就是为什么它通过你的专栏!快速举例,因为你似乎忽略了“检查你要填写的栏目”部分:

- (id)tableView:(NSTableView *)tableView
       objectValueForTableColumn:(NSTableColumn *)column 
                             row:(int)row
{
    if ([[column identifier] isEqualToString:@"A"])
        return [columnArrayA objectAtIndex:row];

    if ([[column identifier] isEqualToString:@"B"])
        return [columnArrayB objectAtIndex:row];

    return nil;
}