1

actionscriptを介してスクロールバースキンのスタイルを適用する際に問題があります。

cssでは、thumbOverSkinとして指定します。Embed(source = "assets / thumb_over.png"、scaleGridLeft = "4"、scaleGridTop = "4"、scaleGridRight = "5"、scaleGridBottom = "5");

actionscriptでは、setStyle( "thumbOverSkin"、someImageClass);として指定します。

上記のステートメントでscaleGridプロパティを指定するにはどうすればよいですか?

よろしくお願いします。

4

1 に答える 1

0

Flex 3を使用しているsomeImageClass場合、それが単なる画像であれば、変数に割り当てることができます。これを試してみてください。Flex3コンポーネントに単純なスキンを設定する2つの方法が示されています。

<?xml version="1.0" encoding="utf-8"?>
<mx:Application
    xmlns:mx="http://www.adobe.com/2006/mxml">

    <mx:Style>
        Button
        {
            overSkin: Embed("assets/over_button.png");
        }
    </mx:Style>

    <mx:Script>
        <![CDATA[

            [Embed(source="assets/up_button.png", scaleGridLeft="15",scaleGridTop="15", scaleGridRight="25", scaleGridBottom="25")]
            public static const UP_SKIN:Class;

        ]]>
    </mx:Script>

    <mx:Button id="button" click="button.setStyle('upSkin', UP_SKIN)"/>

    <mx:HSlider id="sizer"
        minimum="100" maximum="1000"
        liveDragging="true"
        change="{button.width = sizer.value;button.height = sizer.value/2}"/>

</mx:Application>

(これは、テスト用に40x40に縮小されup_button.png単純な赤い正方形でした)。

Flex 4を使用している場合、Skinを拡張するGroupには、完全な9スライスのスケーリングが組み込まれているため、さらに多くのことができます。

お役に立てば幸い、ランス

于 2010-02-25T08:08:03.157 に答える