Прокрутка в NSTableView
-
07-07-2019 - |
Вопрос
Я не спрашиваю, как это сделать, это скорее в строке "Как бы вы это назвали?".
У меня есть NSTableView с несколькими пользовательскими ячейками. Я хочу, чтобы таблица прокручивала строку за строкой, а это означает, что когда я перемещаю полосу прокрутки вверх, я хочу, чтобы верхний ряд исчезал, а когда я перемещал его вниз, я хочу, чтобы нижний ряд также исчезал - я не хочу видеть половину своей ячейки. . р>
Как вы называете этот тип поведения? И можете ли вы поделиться некоторыми указателями, если вы реализовали это в NSTableView?
Решение
Я не совсем уверен, как это будет называться (возможно, что-то вроде " ограниченная прокрутка ??), но вы можете сделать это, используя NSView
-adjustScroll: код> метод.
Общий подход заключается в том, что вам нужно создать подкласс NSTableView
(если у вас его еще нет) и переопределить этот метод, чтобы вернуть NSRect
, который имеет значение origin.y
, кратное высоте вашей строки.
Возможно, вы также захотите использовать -setVerticalLineScroll:
для NSScrollView
, чтобы установить нужную сумму для прокрутки, когда пользователь нажимает стрелки прокрутки на вертикальной полосе прокрутки. Вы можете получить scrollView, вызвав -enclosingScrollView
в вашем tableView.