2011-01-24 3 views
10

У меня есть NSView, который зарегистрирован для операции перетаскивания.NSView Subviews прерывание операции перетаскивания

В этом представлении у меня есть подклассовый NSScrollView, который сам по себе имеет NSImageView.

При перемещении на оригинальный NSView, все нормально, кроме того, когда я тащу за вышеупомянутый NSImageView, который, кажется, ПРЕРЫВАЙТЕ лобовое сопротивление, и я не могу упасть на него (или на самом деле, вид под ним.

NSScrollView, похоже, игнорирует перетаскивание и позволяет перейти к базовому NSView, но как я могу это сделать для NSImageView, так что Drag/Drop регистрируется через себя, это супервизор (NSScrollView) и базовый NSView.

ответ

38

Вы можете отменить регистрацию NSImageView в качестве адресата перетаскивания. Затем его просмотр будет обрабатывать сеанс перетаскивания, если он настроен для этого.

[imageView unregisterDraggedTypes]; 
+3

Работает идеально для меня. –

+0

Работает отлично! :-) – olekeh

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