Flex 4 Auto-Resizeable TextArea Component
发布时间:2020-12-15 04:19:19 所属栏目:百科 来源:网络整理
导读:package cgjc.component {import flash.events.Event;import mx.controls.Alert;import mx.controls.Text;public class AdjustHeightText extends Text {public function AdjustHeightText() {super();this.addEventListener(Event.CHANGE,adjustHeightHandl
package cgjc.component { import flash.events.Event; import mx.controls.Alert; import mx.controls.Text; public class AdjustHeightText extends Text { public function AdjustHeightText() { super(); this.addEventListener(Event.CHANGE,adjustHeightHandler); } private function adjustHeightHandler(event:Event):void { Alert.show("textField.getLineMetrics(0).height: " + textField.getLineMetrics(0).height + "ntextHeight:" + textField.textHeight); height = textField.textHeight; //super.verticalScrollPolicy = "on"; if (height <= textField.textHeight + textField.getLineMetrics(0).height) { height = textField.textHeight; validateNow(); } } //该方法是Text空间自适应文本高度的方法 /* override protected function measure():void { super.measure(); //Alert.show("textField.getLineMetrics(0).height: " + textField.getLineMetrics(0).height + "ntextHeight:" + textField.textHeight); measuredHeight = measuredMinHeight = textField.getExplicitOrMeasuredHeight(); } */ override public function set text(val:String):void { textField.text = val; validateNow(); height = textField.textHeight; validateNow(); } override public function set htmlText(val:String):void { textField.htmlText = val; validateNow(); height = textField.textHeight; validateNow(); } override public function set height(value:Number):void { if (textField == null) { if (height <= value) { super.height = value; } } else { var currentHeight:uint = textField.textHeight + textField.getLineMetrics(0).height; if (currentHeight <= super.maxHeight) { if (textField.textHeight != textField.getLineMetrics(0).height) { super.height = currentHeight; } } else { super.height = super.maxHeight; } } } } }原文链接: http://www.eonflex.com/?p=398 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |