NSTableview выключить подсветку цветом - PullRequest
4 голосов
/ 14 января 2010

Я разрабатываю приложение в какао, которое должно выбрать элемент, установив флажок внутри NSTableview. Мне нужно выбрать ячейку, не выделяя строку представления таблицы Можно ли сделать это... Заранее спасибо

Ответы [ 4 ]

20 голосов
/ 14 января 2010

NSTableView имеет метод с именем setSelectionHighlightStyle:, которому вы можете отправить NSTableViewSelectionHighlightStyleNone в качестве опции, и он не будет отображать выделение

Итак, в awakeFromNib: или аналогичном:

[tableView setSelectionHighlightStyle:NSTableViewSelectionHighlightStyleNone];

2 голосов
/ 14 января 2010

Обычно отслеживаются только выбранные или выбранные ячейки; флажки нуждаются в отслеживании, чтобы быть отмеченными / не отмеченными.

Но может быть возможно сделать то, что вы хотите, используя делегат NSTableView : метод tableView:shouldTrackCell:forTableColumn:row: может использоваться для отслеживания невыбираемых невыбранные ячейки.

1 голос
/ 08 сентября 2017

NSTableview Имеет метод для установки выделения. HighlightStyle

Добавьте строку ниже в вашем методе tableivew:

func tableView(_ tableView: NSTableView, viewFor tableColumn: NSTableColumn?, row: Int) -> NSView?
{ 
    let cell:customCell = tableView.make(withIdentifier: 
     "customCell", owner: self) as! customCell

      tableview.selectionHighlightStyle = .none
}
0 голосов
/ 16 января 2010

Почему бы не установить соответствующее логическое свойство в базовой модели? Если вы используете привязки, табличное представление должно автоматически принять изменение; если нет, вы можете указать табличному представлению перезагрузить эту строку.

...