如何在Dashcode小部件中捕获鼠标拖动事件?

时间:2010-10-14 12:17:02

标签: widget mouseevent dashcode

我有一个使用Dashcode编写的OSX小部件。

目前,任何鼠标拖动事件都会导致整个小部件在桌面上移动。

我希望能够在该窗口小部件的画布上单击并拖动,但我似乎无法阻止OSX仪表板移动整个窗口小部件。

我已经非常高兴地捕捉鼠标动作了,但是点击/拖动组合正在打败我。

1 个答案:

答案 0 :(得分:1)

我显然在Apple开发者网站上找到了答案here

-apple-dashboard-region:上添加div样式,以便接收拖动事件,而不是拖动窗口小部件,例如:

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

编辑 - 这很有效 - 我现在可以在按下鼠标按钮时捕获onMouseMove()个事件。

我还不能做的一件事就是等同于IE setCapture(),其中鼠标移动事件继续传递给应用程序,即使拖动超出了窗口小部件的区域。