Я хочу автоматически изменить размер столбца таблицы по ширине содержимого, если дважды щелкнуть ее заголовок (отображается курсор изменения размера), как в iTunes.
Кто-нибудь знает, как это сделать?
Заранее спасибо
Посмотрите на метод NSTableView setDoubleAction:. Возможно, вы также можете установить его из Интерфейсного Разработчика - я не проверял. Из документации :
NSTableView
setDoubleAction:
setDoubleAction: Устанавливает сообщение, отправляемое цели, когда пользователь дважды щелкает по нередактируемой ячейке или заголовку столбца для данного селектора. - (void)setDoubleAction:(SEL)aSelector Параметры aSelector Сообщение, которое получатель отправляет своей цели, когда пользователь дважды щелкает по не редактируемой ячейке или заголовку столбца. Обсуждение Если ячейка с двойным щелчком мыши является редактируемой, это сообщение не отправляется, и вместо этого ячейка редактируется. Этот метод можно использовать для реализации таких функций, как сортировка записей по столбцу, по которому дважды щелкнули. См. Также clickedRow, который можно использовать для определения, была ли нажата строка, а не заголовок столбца. Чтобы метод имел какой-либо эффект, действие и цель получателя должны быть установлены в класс, в котором объявлен селектор. См. Сообщения о действиях для получения дополнительной информации о сообщениях о действиях.
Устанавливает сообщение, отправляемое цели, когда пользователь дважды щелкает по нередактируемой ячейке или заголовку столбца для данного селектора.
- (void)setDoubleAction:(SEL)aSelector
Параметры aSelector Сообщение, которое получатель отправляет своей цели, когда пользователь дважды щелкает по не редактируемой ячейке или заголовку столбца.
Обсуждение Если ячейка с двойным щелчком мыши является редактируемой, это сообщение не отправляется, и вместо этого ячейка редактируется. Этот метод можно использовать для реализации таких функций, как сортировка записей по столбцу, по которому дважды щелкнули. См. Также clickedRow, который можно использовать для определения, была ли нажата строка, а не заголовок столбца.
clickedRow
Чтобы метод имел какой-либо эффект, действие и цель получателя должны быть установлены в класс, в котором объявлен селектор. См. Сообщения о действиях для получения дополнительной информации о сообщениях о действиях.