actionscript-3 - 如何在 AS3 中透明地处理 mouseEvent?

标签 actionscript-3 flash event-handling mouseevent event-passthrough

我有一个 DisplayObject 停靠在我的界面顶部,用于显示调试信息(每秒帧数等)并且是半透明的,alpha 为 60%。

我想与这个表面下的项目进行交互,这样当鼠标在它上面滚动时,它会变暗到 10% alpha,并且鼠标事件通过它传递到底层对象。

通常,我将此调试信息面板的 mouseEnabled 和 mouseChildren 属性设置为 false,因此其下的对象会接收鼠标事件。

问题是为了在鼠标滚过它时隐藏它,它需要将 mouseEnabled 设置为 true。但是,如果 mouseEnabled 为 true,则鼠标事件不会被其下方的对象拾取。

据我所知,我不能有选择地启用 mouseEvents,所以它要么全部接收,要么不接收。这意味着如果我采用这种方法,我将不得不处理和转发所有事件。

我真的希望 mouseEnabled 属性有一个“窥视”模式或其他东西,这样它就可以在顶部接收事件,但也允许它们传递到下面的对象。

最佳答案

如果一个 DisplayObject 有 mouseEnabled=true这意味着它的事件将被发送到它的 container不是对象下面的任何东西。所以这个解决方案是行不通的。最好的解决方案是使用 getObjectsUnderPoint 手动重新路由事件。如所述 here .

我多年来一直在多点触控应用程序中使用这种方法。通过多个接触点,我看不到任何处理器开销。而你只有一个光标。

关于actionscript-3 - 如何在 AS3 中透明地处理 mouseEvent?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9626199/

相关文章:

javascript - 播放 FLV 时调用 JavaScript 函数

javascript - 如何在 adobe flex 中使用 HTML Dom?

javascript - 如何通过Flash保存录制的音频,文件名通过chrome中的javascript传递

.net - 删除 Console.CancelKeyPress 处理程序一旦禁用任何 future 处理

event-handling - 在Morphic GUI中进行事件传播

StyleableTextField htmlText 的 CSS 属性

actionscript-3 - 检查 ActionScript 中的字符串是否为空,类似于 .net 中的 String.Empty

flash - swc 和外部 swf 中的字体之间的冲突

java - 视频聊天应用: Which technology to choose?

javascript - 有没有办法使用@click(v-on :click) to open one modal,,同时关闭第二个(已经打开?)