【问题标题】:Flex 4:Capturing mouse events with spark.primitive.path objectsFlex 4:使用 spark.primitive.path 对象捕获鼠标事件
【发布时间】:2015-08-09 07:04:33
【问题描述】:

每当鼠标在spark.primitive.path(下方的“L”形)上方执行某些操作时,我都会尝试捕获鼠标事件。

我读过的所有内容都表明我需要将路径放在Group 对象内并将鼠标处理程序附加到该对象。所以代码看起来像这样..

  <s:Group left="10" right="10" top="10" bottom="10" mouseOver="...">
    <s:Path data="M 100 300 L 200 50 L 275 50 L 250 150 L 300 150 L 300 300 Z">                    
            <s:stroke>
                <s:SolidColorStroke color="0x888888"/>
            </s:stroke>
        </s:Path>
  </s:Group>

...并在屏幕上产生类似的东西(请原谅 ascii 艺术)

_____________________________
|                           |
|             _______       |
|            /      /       |
|           /      /        |
|          /      /         |
|         /      /_____     |
|        /            |     |
|       /             |     |
|      /______________|     |
|                           |
-----------------------------

这几乎可以工作。问题是鼠标事件是根据 Group 对象的尺寸而不是 Path 触发的。因此,如果您将鼠标悬停在仍会触发鼠标事件的路径的左侧,因为 Group 是一个从 0,0 开始并在“L”的右下方结束的框。

非常感谢任何关于如何解决此问题(或替代解决方案)的想法。

【问题讨论】:

    标签: flex4 mouseevent


    【解决方案1】:

    如果您使用 SkinnableContainer 而不是 Group,您将获得您正在寻找的行为。

    【讨论】:

      【解决方案2】:

      尝试封装在 Graphic 对象 (Flex4) 中。见那里:http://blog.flexexamples.com/2010/03/22/creating-a-simple-image-map-in-flex-4/

      【讨论】:

        猜你喜欢
        • 2011-08-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-12-26
        • 2016-04-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多