重:spark.components.ButtonBar柔性火花按鈕欄:如何確定哪些按鈕在鼠標懸停事件
火花按鈕欄的鼠標懸停事件,你如何確定哪些幾個按鈕的鼠標懸停過度?當然,在這個時候沒有選擇指數。如果它有所不同,我的ButtonBar沒有在MXML中定義,但在ActionScript中實例化,並且ArrayList被分配給我的ButtonBar實例的dataProvider屬性。
感謝您的幫助。
重:spark.components.ButtonBar柔性火花按鈕欄:如何確定哪些按鈕在鼠標懸停事件
火花按鈕欄的鼠標懸停事件,你如何確定哪些幾個按鈕的鼠標懸停過度?當然,在這個時候沒有選擇指數。如果它有所不同,我的ButtonBar沒有在MXML中定義,但在ActionScript中實例化,並且ArrayList被分配給我的ButtonBar實例的dataProvider屬性。
感謝您的幫助。
如果Flex 4沒有真正簡單/內置的方法來做到這一點,我認爲這是件好事。相反,他們讓您通過ElementExistenceEvent.RENDERER_ADD
和ElementExistenceEvent.RENDERER_REMOVE
訪問渲染器,因此您可以查找各種兒童活動。嘗試了這一點:
<?xml version="1.0" encoding="utf-8"?>
<s:Application
xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx">
<fx:Script>
<![CDATA[
import mx.core.IVisualElement;
import spark.events.RendererExistenceEvent;
protected function rendererAddHandler(event:RendererExistenceEvent):void
{
var element:IVisualElement = event.renderer;
element.addEventListener(MouseEvent.MOUSE_MOVE, renderer_mouseMoveHandler);
}
protected function rendererRemoveHandler(event:RendererExistenceEvent):void
{
var element:IVisualElement = event.renderer;
element.removeEventListener(MouseEvent.MOUSE_MOVE, renderer_mouseMoveHandler);
}
protected function renderer_mouseMoveHandler(event:MouseEvent):void
{
trace(event.currentTarget.label);
}
]]>
</fx:Script>
<s:ButtonBar id="buttonBar"
rendererAdd="rendererAddHandler(event)"
rendererRemove="rendererRemoveHandler(event)">
<s:dataProvider>
<mx:ArrayList source="[one, two, three, four]"/>
</s:dataProvider>
</s:ButtonBar>
</s:Application>
希望幫助, 蘭斯
您可以簡單地使用itemRollOver
事件的火花按鈕欄的。
注 - 此事件僅適用於Flex 4.5及更高版本 http://help.adobe.com/zh_CN/FlashPlatform/reference/actionscript/3/spark/components/supportClasses/ListBase.html#event:itemRollOver – JabbyPanda 2012-03-09 12:22:10
謝謝蘭斯,對於非常有幫助的解釋和簡明的例子。 – Tim 2010-03-07 00:06:54