0

これはかなり簡単だと思っていましたが、これにはあらゆる種類の問題が発生しています。画像と 2 つのラベルを持つ ItemRenderer があります。画像と 2 つのラベルに別々のマウス イベントを割り当てたいと考えています。アイテム レンダラーは 1 つのインタラクティブな作品のように扱われているようですが、それをオーバーライドする方法が見つかりません。デフォルトのロールオーバー効果を無効にすることさえできなかったので、rollOverColor のスタイルを背景に合わせる必要がありました。

誰でも解決策を提供できますか?

<s:DataGroup id="browserDataGroup" dataProvider="{model.userBoardList}"
                 verticalCenter="0" left="10" rollOverColor="0x424242"
                 itemRenderer="edu.xxxxx.components.board.BrowserItemRenderer">
<!--itemrenderer code below -->
<s:ItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009" 
        xmlns:s="library://ns.adobe.com/flex/spark" 
        xmlns:mx="library://ns.adobe.com/flex/halo"
        xmlns:ns="library://ns.adobe.com/flex/mx"
        buttonMode="true" useHandCursor="true"
        mouseChildren="true">
    <s:states>
        <s:State name="up"/>
        <s:State name="over"/>
    </s:states>
    <s:layout>
    <s:VerticalLayout gap="2"/>
    </s:layout>
    <s:Group>       
    <ns:Image id="image" source="{data.thumbnail}"
              addedEffect="Fade" completeEffect="Fade" removedEffect="Fade"
              width="130" height="89" 
              horizontalCenter="0" verticalCenter="0"/>
    <s:Rect id="imageRect" width="130" height="89">
        <s:stroke>
            <s:SolidColorStroke color="0xFFFFFF" joints="miter" pixelHinting="true"/>
        </s:stroke>
    </s:Rect>
    </s:Group>
    <s:Label text="{data.title}" color="0xFFFFFF" fontWeight="bold"/>
    <s:Group>
        <s:layout>
        <s:HorizontalLayout gap="3"/>
        </s:layout>
        <s:Label text="Edit" color="0xFFFFFF" click="trace('edit');"
                 textDecoration.up="underline" textDecoration.over="none"/>
        <s:Label text="|" color="0xFFFFFF"/>
        <s:Label text="Delete" color="0xFFFFFF" click="trace('delete');"
                 textDecoration.up="underline" textDecoration.over="none"/>
    </s:Group>

</s:ItemRenderer>
4

1 に答える 1

0

これが他の誰かに役立つ場合に備えて、解決策はインスタンスに setautoDrawBackground="false"を使用することでした。itemRendererこれにより、オーバーレイの描画が無効になります。次に、やり取りしたい個々の子供たちにrollOverandを使用する必要がありました。rollOut初歩的なミス…見られたくない。

于 2010-03-24T14:45:20.483 に答える