2010-02-25 110 views
1

我在通过actionscript为滚动条皮肤应用样式时遇到了问题。通过actionscript应用皮肤

在CSS中我们指定为 thumbOverSkin:嵌入(源= “资产/ thumb_over.png”,scaleGridLeft = “4”,scaleGridTop = “4”,scaleGridRight = “5”,scaleGridBottom = “5”);

在actionscript中,我们指定为 setStyle(“thumbOverSkin”,someImageClass);

我们如何在上面的语句中指定scaleGrid属性?

感谢您的帮助提前。

回答

0

如果您使用的是Flex 3,那么someImageClass(如果它只是一个图像)就可以分配给一个变量。尝试了这一点,它显示了Flex 3的组件设置简单的皮肤有两种方式:

<?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> 

(该up_button.pngsimple red square而收缩到40×40的测试)。

如果您使用的是Flex 4,扩展了Skin的Group已经完整的9切片缩放并且可以使用它们做更多的事情。

希望帮助, 兰斯

+0

兰斯您好,感谢您的答复。 – 2010-02-25 08:30:48

+0

没问题,它解决了吗? – 2010-02-25 08:31:56

+0

很酷。它工作正常,再次感谢.. – 2010-02-25 09:17:21