TextField.textWidth Property | Flash 6 |
pixel width of all the text in the text field | read/write |
The integer textWidth property indicates the pixel width of the longest line of text contained by theField, including those characters that be accessed only through horizontal scrolling. For each character in the longest line, the textWidth property adds the width specified by the font metrics for that character. Characters can vary greatly in width, depending on font size, case, and even the intrinsic width of the character itself. For example, in 12-point Times New Roman:
The character "a" has a width of 5.
The character "A" has a width of 9.
The character "i" has a width of 3.
The character "w" has a width of 9.
When the autoSize property is true, textWidth is always 4 pixels less than _width, leaving a small gutter between the field's longest line of text and the right and left borders.
To determine the width of a string before assigning it to a text field, use TextFormat.getTextExtent( ).
The textWidth property can be used to create horizontal scrolling interfaces or to scale graphic elements to match the size of a line of text. The following code creates a text field and then draws a line above the field that matches its text's width. Notice that the gutter is accommodated by the line-width calculation:
// Create the text field this.createTextField("theField_txt", 1, 0, 0, 200, 20); theField_txt.text = "Welcome to my web site"; theField_txt.autoSize = true; // Set the line thickness this.lineStyle(3); // Position the start point this.moveTo(theField_txt._x + 2, theField_txt._y); // Draw the line to the end point this.lineTo(theField_txt._x + theField_txt.textWidth, theField_txt._y);
TextField.autoSize, TextField._height, TextField.scroll, TextField.maxhscroll, TextField.textHeight, TextField._width, TextFormat.getTextExtent( )