将DropShadowFilter应用于Flex 3中mx.controls.TextInput组件中的文本

时间:2011-11-22 14:50:01

标签: flex actionscript filter components textinput

有没有办法将DropShadowFilter应用到Flex 3中TextInput组件中的文本而不影响组件本身?

1 个答案:

答案 0 :(得分:1)

实际上,您的mx.controls.TextInput 有一个名为textField的IUITextField类型的成员,但它是protected,因此无法直接从其他课程。 您可以在/frameworks/projects/mx/src/mx/controls/TextInput.as下的Flex SDK中查看其源代码。

要修改此成员,您仍然可以执行以下两项操作之一:

  1. 创建一个扩展mx.controls.TextInput的类。子类可以访问受保护的成员,因此您应该能够添加DropShadowFilter,最好通过覆盖updateDisplayList方法。

  2. 使用显示列表:

    for (var i:int = 0; i < myTextInput.numChildren; i++) {
        var child:DisplayObject = myTextInput.getChildAt(i);
        if (child is IUITextField) doStuffToTextField(child);
    }