How can you get the height of the Text component that's been created dynamically from ActionScript. For instance, if you have something like:
var temp:Text = new Text;
temp.width = 50;
temp.text = "Simple text";
how to get height of temp?
How can you get the height of the Text component that's been created dynamically from ActionScript. For instance, if you have something like:
var temp:Text = new Text;
temp.width = 50;
temp.text = "Simple text";
how to get height of temp?
trace(temp.height);
Edit Based on Comments:
OK I see why, because you are relying on a default height, the Control does not have a height property until the UI draws it so you wouldn't be able to return it until after it's added to the parent object. so this simple app will return 22 when you click on the text:
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()">
<mx:Script>
<![CDATA[
import mx.controls.TextInput;
private function init():void{
var bar:TextInput = new TextInput
bar.x = 5;
bar.y = 5
bar.width = 50;
bar.name = "bar";
foo.addChild(bar);
bar.addEventListener(FlexEvent.CREATION_COMPLETE,runthis);
}
private function runthis(evt:FlexEvent):void{
trace(TextInput(evt.currentTarget).height);
}
]]>
</mx:Script>
<mx:Canvas x="10" y="10" width="200" height="200" id="foo">
</mx:Canvas>
</mx:Application>
But that's only because I'm not trying to get the height until well after the item has been drawn.
OR building off what user294702 said: This works too.
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()">
<mx:Script>
<![CDATA[
import mx.events.FlexEvent;
import mx.controls.TextInput;
private function init():void{
var bar:TextInput = new TextInput
bar.x = 5;
bar.y = 5
bar.width = 50;
bar.name = "bar";
foo.addChild(bar);
foo.validateNow();
trace(bar.height);
}
]]>
</mx:Script>
<mx:Canvas x="10" y="10" width="200" height="200" id="foo">
</mx:Canvas>
</mx:Application>
I hope you've enjoyed your UI lesson today, I can't accept tips but please give positive results on my evaluation or constructive criticism. :-)
You can call validateNow() to make sure the style is applied (and the height relevant)