Окраска строки в NSTableView

То, что я надеюсь делать, выбрано цвет фона выбранной строки в NSTableView, когда я нажимает на кнопку, нажат. Я видел другие случаи, где люди использовали tableView:willDisplayCell:forTableColumn:row: и setBackgroundColor: но я не думаю, что это будет работать в моей ситуации, где я хочу, чтобы она произошла, когда кнопка нажата.

Я знаю, что могу найти выбранную строку с NSTableView selectedRow метод и выбранный Цвет фона для ячейки с setBackgroundColor:, но то, что я не знаю, как сделать, добираются от NSInteger для выбранной строки к NSCell для выбирания цвета фона.

5
задан Joshua 8 January 2010 в 14:37
поделиться

1 ответ

NSTableView использует только один экземпляр NSCell для каждого столбца. При отрисовке содержимого ячейка обновляется для каждой строки. Поэтому нет способа получить ячейку для указанного ряда - нужно изменить ячейку в tableView:willDisplayCell:forTableColumn:row:.

Вы можете указать представлению таблицы на обновление только одной строки, используя reloadDataForRowIndexes:columnIndexes:.

7
ответ дан 18 December 2019 в 08:28
поделиться