我試圖捕獲鼠標事件,只要鼠標在spark.primitive.path
(下面的'L'形狀)頂部完成某件事情。Flex 4:使用spark.primitive.path對象捕獲鼠標事件
我已閱讀的所有內容都指出,我需要將路徑放入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藝術)
_____________________________
| |
| _______ |
| / / |
| / / |
| / / |
| / /_____ |
| / | |
| / | |
| /______________| |
| |
-----------------------------
但這幾乎工作。問題在於鼠標事件是基於組對象的維度而不是路徑觸發的。因此,如果您將鼠標懸停在仍然觸發鼠標事件的路徑的左側,因爲該組是一個從0,0開始到「L」右下角結束的框。
有關我如何解決此問題(或備用解決方案)的任何想法,都非常感謝。
那很棒 – Jason 2010-08-10 12:14:09