2010-01-14 3 views
1

Это мой стол вида делегат:Как установить цвет фона ячейки с помощью NSButtoncell в NSTableView?

- (void)tableView:(NSTableView *)tableView willDisplayCell:(id)aCell forTableColumn:(NSTableColumn *)tableColumn row:(int)row 
{ 
    id theRecord; 
    NSMutableString *gid; 

    theRecord = [tableDataSource objectAtIndex:row]; 
    gid = [theRecord objectForKey:@"gid"]; 

    if (([gid intValue] % 2) != 0) 
    { 
     [aCell setDrawsBackground: YES]; 
     [aCell setBackgroundColor: [NSColor colorWithCalibratedRed: 237.0/255.0 
                  green: 243.0/255.0 
                   blue: 254.0/255.0 
                  alpha: 1.0]]; 

    } 
    else 
    { 
     [aCell setDrawsBackground: NO]; 
    } 
} 

Он отлично работает для отображения нормальной клетки, но и TableView замерзнуть после того как я добавить ячейку с типом NSButtonCell (для флажка). Как это исправить?

Любая помощь будет оценена по достоинству.

ответ

1

В соответствии с NSButtonCell reference вы можете указать только цвет фона для кнопок без рамки. Вы пытались использовать кнопки с ячейками без полей?

Кроме того, я не могу найти setDrawsBackground: метод для NSButtonCell; Я могу найти его только для NSTextFieldCell. Вы пытались удалить звонок?

+0

Приношу свои извинения, я новичок в Cocoa. Необходимо чаще читать документацию. Благодаря! – Irwan

Смежные вопросы