mx.controls.TextArea里负责渲染的实际上是一个mx.core.UITextField,继承自mx.core.FlexTextField;后者又继承自flash.text.TextField。只要得到TextArea里的TextField就能使用它原本就支持的功能。
可是Flex的TextArea里textField是protected的,从外部无法获取,除非继承TextArea;TextArea.getTextField()方法是在mx_internal命名空间里的,不使用这个命名空间也无法调用。
于是我采用的办法是导入并使用[color=red]mx.core.mx_internal[/color]命名空间,然后调用getTextField()方法来得到TextField。
导入和使用命名空间的代码:
script 导入代码:
import mx.core.mx_internal;
use namespace mx_internal;
可是Flex的TextArea里textField是protected的,从外部无法获取,除非继承TextArea;TextArea.getTextField()方法是在mx_internal命名空间里的,不使用这个命名空间也无法调用。
于是我采用的办法是导入并使用[color=red]mx.core.mx_internal[/color]命名空间,然后调用getTextField()方法来得到TextField。
导入和使用命名空间的代码:
script 导入代码:
import mx.core.mx_internal;
use namespace mx_internal;