NStableView выбранный цвет строки (убрать границу NSTableView при выделении) - PullRequest
1 голос
/ 28 сентября 2011

Я использую NSTableView для отображения моих данных. Я хочу удалить цвет выбранной строки, которая по умолчанию принимает blue color. Могу ли я установить его на Clear color. Возможно ли это?

РЕДАКТИРОВАТЬ:

как я могу удалить эту синюю рамку ?? Я установил Clear color для фона стола.

enter image description here
Заранее спасибо..!!! :)

Ответы [ 4 ]

9 голосов
/ 28 сентября 2011
[tableView setSelectionHighlightStyle:NSTableViewSelectionHighlightStyleNone];

Чтобы удалить синюю границу кольца фокуса таблицы, выберите таблицу в .XIB и установите для «Фокуса кольца» значение «Нет»

3 голосов
/ 30 марта 2014

Эта строка должна удалить кольцо.

[tableView setFocusRingType:NSFocusRingTypeNone];

0 голосов
/ 24 февраля 2017

Это бы сработало:)

[результат 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;

}
0 голосов
/ 19 октября 2011

@ Snhl Фрэнсис МакГрю сказал: «Выберите таблицу в своей .XIB и установите« Кольцо фокусировки »на« Нет », эта таблица находится внутри представления прокрутки

...