我找到了几种解决方案,但这些解决方案中没有一种适合我。有人可以帮我解决这个问题。 这是我的代码:
<?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" name="app_clock"
minWidth="150" minHeight="150" width="150" height="150" backgroundAlpha="0.0">
<fx:Script>
<![CDATA[
]]>
</fx:Script>
<fx:Declarations>
</fx:Declarations>
<s:Graphic id="clock_graphics">
<s:Ellipse width="90" height="90" x="5" y="5">
<s:stroke>
<s:LinearGradientStroke weight="50" rotation="60">
<s:entries>
<s:GradientEntry color="#B5B5B5">
</s:GradientEntry>
<s:GradientEntry color="#494949">
</s:GradientEntry>
</s:entries>
</s:LinearGradientStroke>
</s:stroke>
</s:Ellipse>
</s:Graphic>
</s:Application>
我在js中设置了这个params.wmode = "transparent";
和对象
<param name="bgcolor" value="transparent" />
<param name="wmode" value="transparent" />
anybode有解决方案吗? Tnx提前。
答案 0 :(得分:5)
'Backgroundalpha'不起作用。您需要创建自定义透明应用程序外观类。像这样:
<s:Skin xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark">
<fx:Metadata>
[HostComponent("spark.components.Application")]
</fx:Metadata>
<s:states>
<s:State name="normal" />
<s:State name="disabled" />
</s:states>
<s:Rect id="backgroundRect" left="0" right="0" top="0" bottom="0">
<s:fill>
<s:SolidColor alpha="0" />
</s:fill>
</s:Rect>
<s:Group id="contentGroup" left="0" right="0" top="0" bottom="0"
minWidth="0" minHeight="0" />
</s:Skin>
并将其分配给您的应用程序:
<s:Application ... skinClass="MyTransparentApplicationSkin" ... />
我在所有主流浏览器上都测试了这个解决方案。 (是的,包括Safari)
此外,<param name="bgcolor" value="transparent" />
对你没有好处。它只会采用颜色十六进制代码。