Перевключение перетаскивающий от NSTableView до других приложений
Q: Когда я восстанавливаю свое приложение на версии 10.2 Mac OS X, мой NSTableView теряет возможность перетащить к другим приложениям. Как я фиксирую это?
A: Когда я восстанавливаю свое приложение на версии 10.2 Mac OS X, мой NSTableView теряет возможность перетащить к другим приложениям. Как я фиксирую это?
Ошибка в NSTableView в версии 10.2 Mac OS X и более позднем перекрестном приложении причин перетаскивает для не работы без дополнительного кода от разработчика приложений. Перетаскивание в приложении все еще работает правильно. Можно работать вокруг ошибки путем разделения на подклассы NSTableView и переопределения-draggingSourceOperationMaskForLocal: возвратить соответствующий NSDragOperation (обычно NSDragOperationCopy, в зависимости от того, что перетаскивает работу, которую Вы хотите, чтобы перетаскивание выполнило). Только приложения основывались на версии 10.2.x Mac OS X, затронуты; приложения, основанные 10.1.x, не затронуты.
Этот вопрос был решен в версии 10.4 Mac OS X. Для совместимости с тем выпуском и позже, не необходимо разделить NSTableView на подклассы для межприложения, перетаскивающего, который происходит с табличным представлением. Однако, необходимо сконфигурировать табличное представление путем вызова setDraggingSourceOperationMask:forLocal: метод. Это описано более подробно в Использовании Перетаскивания в Таблицах в конце раздела «Beginning a Drag Operation».
История версии документа
| Дата | Примечания |
|---|---|
| 08.02.2008 | Обновленный для разрешения проблемы в Mac OS X 10.4. |
| 02.12.2002 | Новый документ, объясняющий, как повторно включить перетаскивание от NSTableViews до других приложений |