【发布时间】:2012-01-03 22:49:06
【问题描述】:
有没有办法在不影响组件本身的情况下将 DropShadowFilter 应用于 Flex 3 中的 TextInput 组件中的文本?
【问题讨论】:
标签: apache-flex actionscript filter components textinput
有没有办法在不影响组件本身的情况下将 DropShadowFilter 应用于 Flex 3 中的 TextInput 组件中的文本?
【问题讨论】:
标签: apache-flex actionscript filter components textinput
其实你的mx.controls.TextInput确实有一个叫textField的IUITextField类型的成员,但它是protected,所以不能从其他类直接访问。
您可以在 /frameworks/projects/mx/src/mx/controls/TextInput.as 下的 Flex SDK 中查看它的源代码。
要修改此成员,您仍然可以执行以下两项操作之一:
创建一个扩展 mx.controls.TextInput 的类。子类可以访问受保护的成员,因此您应该能够添加 DropShadowFilter,最好的方法是覆盖 updateDisplayList 方法。
使用显示列表:
for (var i:int = 0; i < myTextInput.numChildren; i++) {
var child:DisplayObject = myTextInput.getChildAt(i);
if (child is IUITextField) doStuffToTextField(child);
}
【讨论】: