2015-05-26 2 views
0

Должно быть, я что-то изменилось, чтобы разорвать эту строку кода в моем проекте:NSTableView, [таблица selectedCell] неожиданно дает значение ноль

[table selectedCell] //it gives nil value 

но строка выбрана таблица (она выделена). Таблица основана на ячейке.

В чем может быть причина?

ОБНОВЛЕНИЕ: Я только что видел в документации, что этот метод устарел в 10.10. Но что я должен использовать для получения текущей выбранной ячейки?

+0

Я не понимаю вашу проблему. Вы говорите, что _selectedCell_ дает ноль, но выбирается _row_. A_cell_ не _row_, а _row_ не _cell_. Чего вы хотите достичь? Является ли ваш _tableView_ cellBased или его viewBased? Это может иметь значение. И то, что оно устарело, означает только: оно все еще работает, но уважайте будущее! –

+0

@HeinrichGiesen Я понимаю, что строка не является ячейкой, а строка не является ячейкой. Но я имел в виду, что в таблице есть выбор, он не отменяется. Таблица - это таблица, основанная на ячейках. Я знаю, что он должен работать, даже если он не рекомендуется, я имел в виду, что, поскольку он теперь сломан, возможно, это хороший повод изменить код. – aneuryzm

ответ

1

Это действительно зависит от того, что вы пытаетесь сделать. -selectedCell не относится к NSTableView; он унаследован от NSControl и не особенно полезен для представления таблицы. Отдельные ячейки не могут быть выбраны, но строки или столбцы могут.

Соты могут отредактировать, однако. Это то, что вы пытаетесь выяснить? Какая ячейка в настоящее время редактируется? Если это так, вы можете использовать -editedRow и -editedColumn.

В противном случае вы можете получить либо выбранные индексы строк/строк, либо выбранные индексы столбца/столбца, но выбор строк и столбцов является взаимоисключающим и будет охватывать несколько ячеек. Так как NSControl-selectedCell может дать вам только одну ячейку, вы никогда не сможете получить ответ, который имеет смысл использовать этот метод в виде таблицы. Но, конечно, только одна ячейка может быть отредактирована за раз.

Значит, это Выбор или редактирование Вы ищете?

Смежные вопросы