一般我们会使用_alpha(as2)、alpha(as3)来设置对象的透明值,可是对于动态文本(或输入文本)使用alpha设置是无效的。网上一般介绍的方法是使用draw位图的方式来处理这个问题,可是这个方法比较麻烦,后来发现了,原来使用滤镜好像会把文本框变成位图模式...(概念性的东东不明白,也许不是这个原因,反正达到了我们的效果),所以使用过滤镜的文本框,可以正常的设置alpha值,于是有了下面的函数(注意是as2的代码,as3也一样,这个就不多说了)。
import flash.filters.BlurFilter;
//导入滤镜类..我这里随便选了一个滤镜.
//设置滤镜.所有值设为0(无效果),这样就可以让输入框可正常显示alpha
function enabledAlpha(obj:Object){
obj.filters = [new BlurFilter(0,0,0)]
}
//取消滤镜,变回正常状态
function disabledAlpha(obj:Object){
obj.filters = null
}
//使用,txt为动态文本实例名
enabledAlpha(txt)
txt._alpha = 50
发表回复