NSTableViewDelegate
NSTableViewDelegate
протокол определяет дополнительные методы, реализованные делегатами NSTableView
объекты. Используя табличное представление делегат позволяет Вам настраивать поведение табличного представления, не создавая подкласс табличного представления. Делегат табличного представления обеспечивает представления для строк таблицы и столбцов, и поддерживает функциональность, такую как переупорядочение столбца и выбор строки и изменение размеров.
Наследование
Не применимый
Оператор импорта
Swift
import AppKit
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.6 и позже.
-
Просит делегат к представлению отображать указанную строку и столбец.
Объявление
Swift
optional func tableView(_
tableView
: NSTableView, viewForTableColumntableColumn
: NSTableColumn?, rowrow
: Int) -> NSView?Objective C
- (NSView *)tableView:(NSTableView *)
tableView
viewForTableColumn:(NSTableColumn *)tableColumn
row:(NSInteger)row
Параметры
tableView
Табличное представление, отправившее сообщение.
tableColumn
Столбец таблицы. (Если строка является строкой группы,
tableColumn
nil
.)row
Индекс строки.
Возвращаемое значение
Представление для отображения указанного столбца и строки. Если Вы возвращаетесь
nil
, представление не будет показано в том расположении.Обсуждение
Если Вы хотите использовать, этот метод требуется
NSView
объекты вместоNSCell
объекты для ячеек в табличном представлении. Ячейки и представления не могут быть смешаны в том же табличном представлении.Рекомендуется, чтобы реализация этого метода сначала вызвала
NSTableView
методmakeViewWithIdentifier:owner:
передача, соответственно,tableColumn
идентификатор параметра иself
как владелец, чтобы попытаться снова использовать представление, которое больше не видимо или автоматически разархивировало связанное прототипное представление для того идентификатора.frame
из представления, возвращенного этим методом, не важно, и это будет автоматически установлено таблицей.Свойства представления должны быть должным образом установлены прежде, чем возвратить результат.
Если по крайней мере один идентификатор был связан с табличным представлением во время проектирования, при использовании привязки Какао этот метод является дополнительным. (Обратите внимание на то, что идентификатор представления должен совпасть с идентификатором своего столбца. Простой способ достигнуть этого состоит в том, чтобы использовать Автоматическую установку идентификатора в Интерфейсном Разработчике.), Если этот метод не реализован, таблица автоматически вызовет
NSTableView
методmakeViewWithIdentifier:owner:
сtableColumn
идентификатор параметра и табличное представлениеdelegate
как параметры, чтобы попытаться снова использовать предыдущее представление, или автоматически разархивировать прототип связался с табличным представлением. Если этот метод реализован, можно установить свойства, не использующие привязку.Маска автоизменения размеров возвращенного представления будет автоматически установлена в
NSViewHeightSizable
изменять размеры должным образом на изменениях высоты строки.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Просит делегат к представлению отображать указанную строку.
Объявление
Swift
optional func tableView(_
tableView
: NSTableView, rowViewForRowrow
: Int) -> NSTableRowView?Objective C
- (NSTableRowView *)tableView:(NSTableView *)
tableView
rowViewForRow:(NSInteger)row
Параметры
tableView
Табличное представление, отправившее сообщение.
row
Индекс строки.
Возвращаемое значение
Экземпляр или подкласс
NSTableRowView
. Еслиnil
возвращается,NSTableRowView
экземпляр будет создаваться и использоваться.Обсуждение
Делегат может реализовать этот метод для возврата пользовательского
NSTableRowView
дляrow
.Очередь повторного использования может использоваться таким же образом, как задокументировано в
tableView:viewForTableColumn:row:
. Возвращенное представление будет иметь атрибуты должным образом набором к нему, прежде чем это будет добавлено кtableView
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Говорит делегату, что представление строки было добавлено в указанной строке.
Объявление
Swift
optional func tableView(_
tableView
: NSTableView, didAddRowViewrowView
: NSTableRowView, forRowrow
: Int)Objective C
- (void)tableView:(NSTableView *)
tableView
didAddRowView:(NSTableRowView *)rowView
forRow:(NSInteger)row
Параметры
tableView
Табличное представление, отправившее сообщение.
rowView
Представление строки.
row
Индекс строки.
Обсуждение
В этой точке делегат может добавить дополнительные представления или изменить свойства
rowView
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Говорит делегату, что представление строки было удалено из таблицы в указанной строке.
Объявление
Swift
optional func tableView(_
tableView
: NSTableView, didRemoveRowViewrowView
: NSTableRowView, forRowrow
: Int)Objective C
- (void)tableView:(NSTableView *)
tableView
didRemoveRowView:(NSTableRowView *)rowView
forRow:(NSInteger)row
Параметры
tableView
Табличное представление, отправившее сообщение.
rowView
Представление строки.
row
Индекс строки.
Обсуждение
Если
row
равняется-1
, строка удаляется из таблицы и больше не является допустимой строкой; иначеrow
допустимая строка, удаляющаяся, будучи отъезжавшимся экран.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Возвраты, является ли указанная строка строкой группы.
Объявление
Swift
optional func tableView(_
tableView
: NSTableView, isGroupRowrow
: Int) -> BoolObjective C
- (BOOL)tableView:(NSTableView *)
tableView
isGroupRow:(NSInteger)row
Параметры
tableView
Табличное представление, отправившее сообщение.
row
Индекс строки.
Возвращаемое значение
YES
true
если указанная строка должна иметь нарисованный стиль строки группы,NO
false
иначе.Обсуждение
Если ячейка в
row
NSTextFieldCell
и содержит только строку, атрибуты стиля строки группы будут автоматически применены к ячейке.Строки группы в
NSView
- основанные табличные представления могут быть сделаны визуально «плавать» путем установки метода табличного представленияsetFloatsGroupRows:
кYES
true
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
См. также
floatsGroupRows
(NSTableView
)setFloatsGroupRows:
(NSTableView
)
-
Говорит делегату, что табличное представление выведет на экран указанную ячейку в указанной строке и столбце.
Объявление
Swift
optional func tableView(_
aTableView
: NSTableView, willDisplayCellaCell
: AnyObject, forTableColumnaTableColumn
: NSTableColumn?, rowrowIndex
: Int)Objective C
- (void)tableView:(NSTableView *)
aTableView
willDisplayCell:(id)aCell
forTableColumn:(NSTableColumn *)aTableColumn
row:(NSInteger)rowIndex
Параметры
aTableView
Табличное представление, отправившее сообщение.
aCell
Ячейка, которая будет выведена на экран.
aTableColumn
Столбец таблицы.
rowIndex
Индекс строки.
Обсуждение
Делегат может изменить атрибуты дисплея
aCell
изменить появление ячейки.Поскольку
aCell
снова используется для каждой строки вaTableColumn
, делегат должен установить атрибуты дисплея и при рисовании специальных ячеек и при рисовании стандартных ячеек.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Спрашивает делегат к пользовательской ячейке данных для указанной строки и столбца.
Объявление
Swift
optional func tableView(_
tableView
: NSTableView, dataCellForTableColumntableColumn
: NSTableColumn?, rowrow
: Int) -> NSCell?Objective C
- (NSCell *)tableView:(NSTableView *)
tableView
dataCellForTableColumn:(NSTableColumn *)tableColumn
row:(NSInteger)row
Параметры
tableView
Табличное представление, отправившее сообщение.
tableColumn
Столбец таблицы.
row
Индекс строки.
Возвращаемое значение
NSCell
подкласс, использующийся для указанногоrow
иtableColumn
. Возвращенная ячейка должна должным образом реализоватьcopyWithZone:
.Обсуждение
Различная ячейка данных может быть возвращена для любого определенного столбца таблицы и строки или ячейки, которая будет использоваться для всей строки (т.е. полная ячейка ширины).
Если
tableColumn
не -nil
, необходимо возвратить ячейку (обычно как результат отправкиtableColumn
adataCellForRow:
сообщение).В то время как каждая строка рисуется, этот метод сначала вызывают с a
tableColumn
значениеnil
позволить Вам возвращать ячейку группы — т.е. ячейка, которая будет использоваться для рисования всей строки. Если Вы возвращаете ячейку когдаtableColumn
nil
, весь реализованный источник данных и методы делегата должны быть подготовлены обработать anil
значение столбца таблицы. Если Вы не возвращаете ячейку, этот метод вызывают один раз для каждогоtableColumn
вtableView
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
tableView (_: shouldShowCellExpansionForTableColumn:row:) - tableView:shouldShowCellExpansionForTableColumn:row:
Если подсказка расширения должна быть выведена на экран для определенной строки и столбца, спрашивает делегат.
Объявление
Swift
optional func tableView(_
tableView
: NSTableView, shouldShowCellExpansionForTableColumntableColumn
: NSTableColumn?, rowrow
: Int) -> BoolObjective C
- (BOOL)tableView:(NSTableView *)
tableView
shouldShowCellExpansionForTableColumn:(NSTableColumn *)tableColumn
row:(NSInteger)row
Параметры
tableView
Табличное представление, отправившее сообщение.
tableColumn
Столбец таблицы.
row
Индекс строки.
Возвращаемое значение
YES
true
если подсказка расширения должна быть выведена на экран,NO
false
иначе.Обсуждение
Подсказка расширения может быть выведена на экран, когда указатель нависает над ячейкой, содержащей усеченный текст. Когда возвращается этот метод
YES
true
, полное содержание ячейки показано в подсказке расширения, выглядящей подобной тегу справки.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
tableView (_: toolTipForCell:rect:tableColumn:row:mouseLocation:) - tableView:toolTipForCell:rect:tableColumn:row:mouseLocation:
Просит делегат к строке отображать в подсказке для указанной ячейки в столбце и строке.
Объявление
Swift
optional func tableView(_
aTableView
: NSTableView, toolTipForCellaCell
: NSCell, rectrect
: NSRectPointer, tableColumnaTableColumn
: NSTableColumn?, rowrow
: Int, mouseLocationmouseLocation
: NSPoint) -> StringObjective C
- (NSString *)tableView:(NSTableView *)
aTableView
toolTipForCell:(NSCell *)aCell
rect:(NSRectPointer)rect
tableColumn:(NSTableColumn *)aTableColumn
row:(NSInteger)row
mouseLocation:(NSPoint)mouseLocation
Параметры
aTableView
Табличное представление, отправившее сообщение.
aCell
Ячейка.
rect
Предложенная активная область подсказки. Можно изменить
rect
обеспечить альтернативную активную область.aTableColumn
Столбец таблицы.
row
Индекс строки.
mouseLocation
Расположение мыши.
Возвращаемое значение
Строка, которая должна быть выведена на экран в подсказке. Возвратиться
nil
или пустая строка, если не желаема никакая подсказка.Обсуждение
По умолчанию,
rect
вычислен как[cell drawingRectForBounds:cellFrame]
. Обратите внимание на то, что подсказки также известны как теги справки.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.4 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Если ячейка в указанной строке и столбце может быть отредактирована, спрашивает делегат.
Объявление
Swift
optional func tableView(_
aTableView
: NSTableView, shouldEditTableColumnaTableColumn
: NSTableColumn?, rowrowIndex
: Int) -> BoolObjective C
- (BOOL)tableView:(NSTableView *)
aTableView
shouldEditTableColumn:(NSTableColumn *)aTableColumn
row:(NSInteger)rowIndex
Параметры
aTableView
Табличное представление, отправившее сообщение.
aTableColumn
Столбец таблицы.
rowIndex
Индекс строки.
Возвращаемое значение
YES
true
позволить редактировать ячейку,NO
false
отрицать редактировать.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Спрашивает делегат к высоте указанной строки.
Объявление
Swift
optional func tableView(_
tableView
: NSTableView, heightOfRowrow
: Int) -> CGFloatObjective C
- (CGFloat)tableView:(NSTableView *)
tableView
heightOfRow:(NSInteger)row
Параметры
tableView
Табличное представление, отправившее сообщение.
row
Индекс строки.
Возвращаемое значение
Высота строки. Высота не должна включать интервал межъячейки и должна быть больше, чем нуль.
Обсуждение
Необходимо реализовать этот метод если табличные поддержки переменные высоты строки.
Несмотря на то, что табличные представления могут кэшировать возвращенные значения, необходимо гарантировать, что этот метод эффективен. При изменении высоты строки, необходимо лишить законной силы существующую высоту строки путем вызова
noteHeightOfRowsWithIndexesChanged:
.NSTableView
автоматически лишает законной силы его весь кэш высоты строки когдаreloadData
иnoteNumberOfRowsChanged
вызываются.Если Вы вызываете
viewAtColumn:row:makeIfNecessary:
илиrowViewAtRow:makeIfNecessary:
в Вашей реализации этого метода выдается исключение.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.4 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Просит делегат обеспечивать пользовательское поведение калибровки, когда столбец изменяет размеры делителя, дважды щелкнут.
Объявление
Swift
optional func tableView(_
tableView
: NSTableView, sizeToFitWidthOfColumncolumn
: Int) -> CGFloatObjective C
- (CGFloat)tableView:(NSTableView *)
tableView
sizeToFitWidthOfColumn:(NSInteger)column
Параметры
tableView
Табличное представление, отправившее сообщение.
column
Индекс столбца.
Возвращаемое значение
Ширина указанного столбца.
Обсуждение
По умолчанию,
NSTableView
выполняет итерации каждой строки в таблице, получает доступ к ячейке черезpreparedCellAtColumn:row:
, и запросыcellSize
найти, что надлежащая самая большая ширина использует.Для точных результатов и производительности, рекомендуется, чтобы этот метод был реализован при использовании больших таблиц. По умолчанию большие таблицы используют моделирование Монте-Карло вместо того, чтобы выполнить итерации каждой строки.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.6 и позже.
-
Если пользователю разрешают изменить выбор, спрашивает делегат.
Объявление
Swift
optional func selectionShouldChangeInTableView(_
aTableView
: NSTableView) -> BoolObjective C
- (BOOL)selectionShouldChangeInTableView:(NSTableView *)
aTableView
Параметры
aTableView
Табличное представление, отправившее сообщение.
Возвращаемое значение
YES
true
позволить табличному представлению изменять свой выбор (обычно отредактированная строка),NO
false
отклонять изменение выбора.Обсуждение
Пользователь может выбрать и отредактировать различные ячейки в той же строке, но не может выбрать другую строку, если не утверждает делегат. Делегат может реализовать этот метод для сложной проверки отредактированных строк на основе значений любой из их ячеек.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Если табличное представление должно позволить выбор указанной строки, спрашивает делегат.
Объявление
Swift
optional func tableView(_
aTableView
: NSTableView, shouldSelectRowrowIndex
: Int) -> BoolObjective C
- (BOOL)tableView:(NSTableView *)
aTableView
shouldSelectRow:(NSInteger)rowIndex
Параметры
aTableView
Табличное представление, отправившее сообщение.
rowIndex
Индекс строки.
Возвращаемое значение
YES
true
разрешать выбор строки,NO
false
отклонять выбор.Обсуждение
Делегат может реализовать этот метод для запрещения выбора определенных строк.
Для лучшей производительности и управления более прекрасной мелкой частицы выбором, использовать
tableView:selectionIndexesForProposedSelection:
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
tableView (_: selectionIndexesForProposedSelection:) - tableView:selectionIndexesForProposedSelection:
Просит делегат принимать или отклонять предложенный выбор.
Объявление
Swift
optional func tableView(_
tableView
: NSTableView, selectionIndexesForProposedSelectionproposedSelectionIndexes
: NSIndexSet) -> NSIndexSetObjective C
- (NSIndexSet *)tableView:(NSTableView *)
tableView
selectionIndexesForProposedSelection:(NSIndexSet *)proposedSelectionIndexes
Параметры
tableView
Табличное представление, отправившее сообщение.
proposedSelectionIndexes
Индексный набор, содержащий индексы предложенного выбора.
Возвращаемое значение
NSIndexSet
экземпляр, содержащий индексы нового выбора. ВозвратитьсяproposedSelectionIndexes
если предложенный выбор приемлем, или значение существующего выбора табличного представления, чтобы избежать изменять выбор.Обсуждение
Этот метод можно вызвать многократно с одним новым индексом, добавленным к существующему выбору, чтобы узнать, может ли определенный индекс быть выбран, когда пользователь расширяет выбор с помощью клавиатуры или мыши.
Если реализовано, вместо этого метода вызовут
tableView:shouldSelectRow:
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Спрашивает делегат, может ли быть выбран указанный столбец таблицы.
Объявление
Swift
optional func tableView(_
aTableView
: NSTableView, shouldSelectTableColumnaTableColumn
: NSTableColumn?) -> BoolObjective C
- (BOOL)tableView:(NSTableView *)
aTableView
shouldSelectTableColumn:(NSTableColumn *)aTableColumn
Параметры
aTableView
Табличное представление, отправившее сообщение.
aTableColumn
Столбец таблицы.
Возвращаемое значение
YES
true
разрешать выбор, иначеNO
false
.Обсуждение
Делегат может реализовать этот метод для запрещения выбора определенных столбцов.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Говорит делегату, что выбор табличного представления находится в процессе изменения.
Объявление
Swift
optional func tableViewSelectionIsChanging(_
aNotification
: NSNotification)Objective C
- (void)tableViewSelectionIsChanging:(NSNotification *)
aNotification
Параметры
aNotification
Уведомление называют
NSTableViewSelectionIsChangingNotification
.Обсуждение
Этот метод вызывают только, когда события от нажатия мыши — и не события клавиатуры — изменяют выбор. Например, когда пользователь перетаскивает мышь через многократные строки таблицы, этот метод вызывают.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Говорит делегату, что изменился выбор табличного представления.
Объявление
Swift
optional func tableViewSelectionDidChange(_
aNotification
: NSNotification)Objective C
- (void)tableViewSelectionDidChange:(NSNotification *)
aNotification
Параметры
aNotification
Уведомление называют
NSTableViewSelectionDidChangeNotification
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
tableView (_: shouldTypeSelectForEvent:withCurrentSearchString:) - tableView:shouldTypeSelectForEvent:withCurrentSearchString:
Просит делегат позволять или отклонять выбор типа для указанного события и текущей строки поиска.
Объявление
Swift
optional func tableView(_
tableView
: NSTableView, shouldTypeSelectForEventevent
: NSEvent, withCurrentSearchStringsearchString
: String?) -> BoolObjective C
- (BOOL)tableView:(NSTableView *)
tableView
shouldTypeSelectForEvent:(NSEvent *)event
withCurrentSearchString:(NSString *)searchString
Параметры
tableView
Табличное представление, отправившее сообщение.
event
Событие.
searchString
Строка поиска или
nil
если никакой выбор типа не имеет, начался.Возвращаемое значение
YES для разрешения типа выбирает для события, НЕТ иначе.
Обсуждение
Как правило, это вызывают от табличного представления
keyDown:
реализация и событие будут ключевым событием.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Просит делегат обеспечивать значение альтернативного текста, используемое для выбора типа для указанной строки и столбца.
Объявление
Swift
optional func tableView(_
tableView
: NSTableView, typeSelectStringForTableColumntableColumn
: NSTableColumn?, rowrow
: Int) -> String?Objective C
- (NSString *)tableView:(NSTableView *)
tableView
typeSelectStringForTableColumn:(NSTableColumn *)tableColumn
row:(NSInteger)row
Параметры
tableView
Табличное представление, отправившее сообщение.
tableColumn
Столбец таблицы.
row
Индекс строки.
Возвращаемое значение
Строка, использующаяся в сравнении выбора типа для
row
иtableColumn
. Возвратитьсяnil
еслиrow
илиtableColumn
не должен искаться.Обсуждение
Реализуйте этот метод для изменения строкового значения, разыскивающегося на основе того, что выведено на экран. По умолчанию все ячейки с текстом в них ищутся.
Если этот метод делегата не реализован, строковое значение по умолчанию (который может также быть возвращен из метода делегата):
[[tableView preparedCellAtColumn:tableColumn row:row] stringValue]
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
tableView (_: nextTypeSelectMatchFromRow:toRow:forString:) - tableView:nextTypeSelectMatchFromRow:toRow:forString:
Спрашивает делегат к строке в указанном поисковом диапазоне, соответствующем указанную строку.
Объявление
Swift
optional func tableView(_
tableView
: NSTableView, nextTypeSelectMatchFromRowstartRow
: Int, toRowendRow
: Int, forStringsearchString
: String) -> IntObjective C
- (NSInteger)tableView:(NSTableView *)
tableView
nextTypeSelectMatchFromRow:(NSInteger)startRow
toRow:(NSInteger)endRow
forString:(NSString *)searchString
Параметры
tableView
Табличное представление, отправившее сообщение.
startRow
Стартовая строка поискового диапазона.
endRow
Конечная строка поискового диапазона.
searchString
Строка, содержащая введенный выбор.
Возвращаемое значение
Первая строка в диапазоне
startRow
черезendRow
(исключаяendRow
самостоятельно), который соответствуетselectionString
. Возвратитесь-1, если не найдено никакое соответствие.Обсуждение
Используйте этот метод, чтобы управлять, как выбор типа работает в таблице. (Реализация этого метода не требуется, чтобы выбор типа поддержки.) Обратите внимание на то, что это возможно для
endRow
быть меньше, чемstartRow
если перенесется поиск.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Просит делегат позволять или запрещать, что указанный столбец перетаскивается к новому расположению.
Объявление
Swift
optional func tableView(_
tableView
: NSTableView, shouldReorderColumncolumnIndex
: Int, toColumnnewColumnIndex
: Int) -> BoolObjective C
- (BOOL)tableView:(NSTableView *)
tableView
shouldReorderColumn:(NSInteger)columnIndex
toColumn:(NSInteger)newColumnIndex
Параметры
tableView
Табличное представление, отправившее сообщение.
columnIndex
Индекс перетаскиваемого столбца.
newColumnIndex
Предложенный целевой индекс столбца.
Возвращаемое значение
YES
true
если переупорядочение столбца должно быть позволено, иначеNO
false
.Обсуждение
Когда столбец первоначально перетаскивается пользователем, делегата сначала вызывают с a
newColumnIndex
значение-1
. ВозвратNO
false
запретит тот столбец от того, чтобы быть переупорядоченным вообще. ВозвратYES
true
позволяет ему быть переупорядоченным, и делегата вызовут снова, когда столбец достигнет нового расположения.Фактическое
NSTableColumn
экземпляр может быть получен отtableColumns
массив.Если этот метод не реализован, все столбцы считают reorderable.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.6 и позже.
-
Говорит делегату, что был перетащен указанный столбец таблицы.
Объявление
Swift
optional func tableView(_
tableView
: NSTableView, didDragTableColumntableColumn
: NSTableColumn)Objective C
- (void)tableView:(NSTableView *)
tableView
didDragTableColumn:(NSTableColumn *)tableColumn
Параметры
tableView
Табличное представление, отправившее сообщение.
tableColumn
Столбец таблицы.
Специальные замечания
В частности, когда кнопка мыши восстанавливает работоспособность в, этот метод отправляется
tableView
иtableColumn
был перетащен в течение времени, на которое снизилась кнопка мыши. На OS X v 10.5 и позже перетащенный столбец отправляется делегату. (В более ранних версиях OS X отправляется столбец таблицы, это в настоящее время располагается в исходном индексе перетащенного столбца.)Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Говорит делегату, что столбец таблицы был перемещен пользовательским действием.
Объявление
Swift
optional func tableViewColumnDidMove(_
aNotification
: NSNotification)Objective C
- (void)tableViewColumnDidMove:(NSNotification *)
aNotification
Параметры
aNotification
Уведомление называют
NSTableViewColumnDidMoveNotification
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Говорит делегату, что был изменен tablecolumn.
Объявление
Swift
optional func tableViewColumnDidResize(_
aNotification
: NSNotification)Objective C
- (void)tableViewColumnDidResize:(NSNotification *)
aNotification
Параметры
aNotification
Уведомление называют
NSTableViewColumnDidResizeNotification
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Говорит делегату, что кнопкой мыши щелкнули в указанном столбце таблицы, но не был перетащен столбец.
Объявление
Swift
optional func tableView(_
tableView
: NSTableView, didClickTableColumntableColumn
: NSTableColumn)Objective C
- (void)tableView:(NSTableView *)
tableView
didClickTableColumn:(NSTableColumn *)tableColumn
Параметры
tableView
Табличное представление, отправившее сообщение.
tableColumn
Столбец таблицы.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Говорит делегату, что кнопкой мыши щелкнули в заголовке указанного столбца таблицы.
Объявление
Swift
optional func tableView(_
tableView
: NSTableView, mouseDownInHeaderOfTableColumntableColumn
: NSTableColumn)Objective C
- (void)tableView:(NSTableView *)
tableView
mouseDownInHeaderOfTableColumn:(NSTableColumn *)tableColumn
Параметры
tableView
Табличное представление, отправившее сообщение.
tableColumn
Столбец таблицы.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Спрашивает делегат, должна ли быть прослежена указанная ячейка.
Объявление
Swift
optional func tableView(_
tableView
: NSTableView, shouldTrackCellcell
: NSCell, forTableColumntableColumn
: NSTableColumn?, rowrow
: Int) -> BoolObjective C
- (BOOL)tableView:(NSTableView *)
tableView
shouldTrackCell:(NSCell *)cell
forTableColumn:(NSTableColumn *)tableColumn
row:(NSInteger)row
Параметры
tableView
Табличное представление, отправившее сообщение.
cell
Ячейка для отслеживания.
tableColumn
Столбец таблицы.
row
Строка в
tableView
.Возвращаемое значение
YES
true
если ячейка должна быть прослежена,NO
false
иначе.Обсуждение
В целом только выбираемые или выбранные ячейки могут быть прослежены. При реализации этого метода ячейки, не можно выбрать или не выбранные, могут быть прослежены; точно так же ячейки, можно выбрать или выбранные, могут быть установлены как неотслеженные.
Например, это позволяет Вам иметь
NSButtonCell
в таблице, которая не изменяет выбор, но может все еще щелкнуться и прослежена.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
Доступный как часть неофициального протокола до OS X v10.6.