Как я могу отловить события перетаскивания мышью в виджете Dashcode? - PullRequest
0 голосов
/ 14 октября 2010

У меня есть виджет OSX, написанный с использованием Dashcode.

В настоящее время любое событие перетаскивания мыши приводит к перемещению всего виджета на рабочем столе.

Я бы хотел иметь возможность щелкать и перетаскивать в пределах холста этот виджет, но, похоже, не могу помешать панели инструментов OSX перемещать весь виджет вместо этого.

Я уже радостно захватываю мышь движений , но комбинация щелчка / перетаскивания побеждает меня.

1 Ответ

1 голос
/ 04 ноября 2010

Я, по-видимому, нашел ответ, здесь на сайте Apple Developer.

Поместите стиль -apple-dashboard-region: на div, который вы хотите вместо этого получать события перетаскивания.перетаскивания виджета, например:

#canvas {
    -apple-dashboard-region: dashboard-region(control rectangle 4px 4px 4px 4px);
}

РЕДАКТИРОВАТЬ - это работает - теперь я могу захватывать onMouseMove() события, когда нажата кнопка мыши.

Одна вещь, которую я не могу (пока) do является эквивалентом IE setCapture(), где события перемещения мыши продолжают передаваться приложению, даже когда перетаскивание выходит за пределы области виджета.

...