1

我有 1 个表,我需要在其中比较值。如果它们不匹配,则突出显示那些表格视图单元格。

表有列

XXX 年年年

MH_01 MH_02

MH_02 MH_03

MH_04 MH_05

它需要检查的是 row[1]YYYY=row[2] XXX 如果不是,那么它应该连续突出显示该单元格。就像在这个例子中一样,它将突出显示(YYYY-(MH_03)和xxxx(MH_04)。

4

1 回答 1

0

在模型对象上实现下一个和上一个条目的瞬态属性。然后在模型对象上创建另外两个瞬态属性以返回 NSColor 或显示单元格突出显示所需的任何内容。

然后,您可以在表的数据源中填充 next 和 prev 属性。如果您使用 NSArrayController 作为数据源,您可以轻松地继承 NSArrayController 来为您填充下一个和上一个。

-(NSArray *)arrangeObjects:(NSArray *)objects
{
    NSArray * arrangedObjects = [super arrangeObjects:objects];

    NSManagedObject * previousEntry;
    for (NSManagedObject * entry in arrangedObjects)
    {
        [previousEntry setValue:entry forKey:@"nextEntry"];
        [entry setValue:previousEntry forKey:@"prevEntry"];
        previousEntry = entry;
    }

    return arrangedObjects;
}
于 2013-01-15T20:45:41.350 回答