1

如何为组件 TextArea (Spark 4) 中的所有字母添加效果(阴影、发光)?

4

5 回答 5

1

我看到这是一个老问题,但是由于我今天遇到了同样的问题,所以我发布了我的解决方案。

您可以按照此处所述访问using的RichEditableText组件: TextAreatextDisplay

RichEditableText 可以作为 textDisplay 访问,而 Scroller 可以作为滚动条访问

RichEditableText是从 扩展而来的UIComponent,因此filters可以应用于UIComponents“您可以将过滤器应用于从 UIComponent 派生的任何可视组件”),可以应用于它。

例如,为了将 aDropShadowFilter应用于组件中的所有字母,myTextArea:TextArea我使用了以下代码行:

var richTextComponent:UIComponent = myTextArea.textDisplay as UIComponent;
var shadow:spark.filters.DropShadowFilter = new spark.filters.DropShadowFilter;
richTextComponent.filters = [shadow];

希望这可以帮助某人:-)

于 2014-02-12T08:32:55.220 回答
0

只需将皮肤添加到您的 TextArea 组件,然后将阴影添加到皮肤内的 RichEditableText。

<fx:Declarations>
    <s:DropShadowFilter id="shadow2"/>
</fx:Declarations>

<s:RichEditableText id="textDisplay" heightInLines="10" widthInChars="15"  filters="{[shadow2]}"/>

它对我有用,你只需调整阴影以获得漂亮的外观。

于 2012-09-12T16:49:14.837 回答
0

我不认为你可以使用 Flex 来做到这一点(或者至少我从来没有)。您需要使用 AS3 来完成

<s:Label id="label1" text="Shadow Me" />

<fx:Script>
    <![CDATA[
    import flash.filters.*;

    private function creationComplete():void{
        var dropshadow:DropShadowFilter = new DropShadowFilter( 3,90,0x000000,.5,4,4,3,3 );
        this.label1.filters = [ dropshadow ];
    }
    ]]>
</fx:Script>
于 2012-08-30T06:14:41.453 回答
0

通过使用 Filter 类,我们可以为 as:TextArea 组件应用阴影发光效果。示例代码是:

<s:TextArea contentBackgroundAlpha="0" borderAlpha="0">
        <s:filters>
              <s:DropShadowFilter distance="5" angle="45" color="#666666"/>
        </s:filters>
        <s:content>
              Testing text area content
        </s:content>
  </s:TextArea>

请参阅链接http://www.roseindia.net/tutorial/flex/flex4/components/filters.html以应用更多过滤器(DropShadowFilter、GlowFilter、BlurFilter 和 BevelFilter)。

于 2012-09-12T12:14:13.737 回答
0
contentBackgroundAlpha="0" borderVisible="false"
于 2012-08-30T11:45:36.673 回答