2012-06-06 49 views
0

我想禁用特定表格中的特定单元格。我希望能够在不久的将来为整个专栏做好所有这些工作,但现在我正在尝试。NSTableView禁用特定单元格

tc1和tc2表示NSTableColumns,而tv表示NSTableView。

但是代码编译并运行时,行2和表列中名为“column1”的单元格仍处于启用状态。我需要做些什么才能使其停用?

代码下面的示例:

-(id)init 
    {  
    self = [super init]; 
    if (self) 
    { 
     arr = [[NSMutableArray alloc] init]; 
     [tc1 setIdentifier:@"colum1"]; 
     [tc2 setIdentifier:@"colum2"]; 
     [tv setDelegate:self]; 
    } 
    return (self); 
    } 

    - (void)tableView:(NSTableView *)aTableView willDisplayCell:(id)aCell forTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex 
    {  
     if([[aTableColumn identifier] isEqualToString:@"column1"]) 
     { 
      if (rowIndex == 2) // myindex holds the row index where I need to disable the cells 
      { 
       [aCell setEnabled:NO]; 
      } 
     } 
      else 
      { 
       [aCell setEnabled:YES]; 
      } 
    } 
+0

请记住,行索引从0开始 –

+0

是的,我知道。 2只是一个任意数字。 – Kevin

回答

0

问题是拼写错误声明标识符时。解决了。

相关问题