NStableView选中的行颜色(删除选定的NSTableView边框)

问题描述:

我使用NSTableView来显示我的数据。我想删除选定行的颜色,默认采用blue color。我可以将它设置为Clear color。可能吗??NStableView选中的行颜色(删除选定的NSTableView边框)

编辑:

我怎样才能删除这个蓝色边框?我已将Clear color设置为表格背景。

enter image description here
在此先感谢.. !!! :)

[tableView setSelectionHighlightStyle:NSTableViewSelectionHighlightStyleNone]; 

要删除表的蓝色对焦环的边界,在你的.xib选择表,并设置调焦环无

+0

由于它的工作不错.. !! :)但表格边框依然突出..是否有可能删除也? – iUser

+0

谢谢弗朗西斯麦克格鲁.. .. – iUser

+1

@Francis:请编辑/更新您的答案。既然它被认为是“正确的”(但不是),那么将来对于那些知道OP的问题是焦点环而不是选择亮点风格的人来说,将会是更好的帮助。 :-) –

@Snhl 弗朗西斯麦格鲁说:“在你的.xib选择表,将Focus Ring设置为None“,该表格位于滚动视图内

该行应移除该环。

[tableView setFocusRingType:NSFocusRingTypeNone];

这会做的伎俩:)

[结果setSelectable:NO];

把上面的代码在下面的方法...

- (NSView *)tableView:(NSTableView *)tableView 
    viewForTableColumn:(NSTableColumn *)tableColumn 
        row:(NSInteger)row { 
    NSTextField *result = [tableView makeViewWithIdentifier:@"MyView" owner:self]; 

    // There is no existing cell to reuse so create a new one 
    if (result == nil) { 

     result = [[NSTextField alloc] initWithFrame:CGRectMake(0, 0, 289, 50)]; 
     result.identifier = @"MyView"; 
    } 

    [result setBackgroundColor:[NSColor clearColor]]; 
    [result setBordered:NO]; 

//set selectable proeprty to NO and your blue border will disappear 
[result setSelectable:NO]; 
// Return the result 
    return result; 

}