Moinsen,
da mir das Erstellen von Text-Feldern von Hand irgendwann auf den Sack ging, habe ich eine Mini-Klasse geschrieben, die ein ganz simples HTML-Text-Feld zurückgibt.
PHP-Code:
/**
Erstellt ein HTML-Text
@author Boris Horn
@version 1.0
@example
<code>
var tf:TextField = new TextField();
tf = TextMades.createHTMLText(this,"testText", "testText", 10 ,10, 160,100, "dynamic", "myEmbedFont" ,17, true, false, true, false, true, true);
</code>
*/
class TextMades
{
/**
@param target der Movieclip in welchem das Text-Feld erstellt werden soll
@param sInstance der Instanzname des Textfeldes
@param sText Der Inhalt des Text-Feldes (HTML-Text fähig)
@param nX die X-Koordinate des Text-Feldes (relativ zu target)
@param nY die Y-Koordinate des Text-Feldes (relativ zu target)
@param nWidth die Maximal-Breite des Text-Feldes
@param nHeight die Maximal-Höhe des Text-Feldes
@param sType der Typ des Text-Feldes ("dynamic", "input")
@param sFont der in der Library verknüpfte Font
@param nFontSize die Font-Grösse
@param bWordWrap schaltet den Zeilenumbruch an oder aus
@param bSelectable schaltet markierbaren Text an oder aus
@param bMultLine schaltet Mehrzeiligkeit an oder aus
@param bBorder Rahmen um das Text-Feld
@param bAutoSize schaltet Autosize an oder aus
@param bEmbedFonts aktiviert embedded Fonts
*/
public static function createHTMLText(target:MovieClip, sInstance:String, sText:String, nX:Number, nY:Number, nWidth:Number, nHeight:Number, sType:String, sFont:String, nFontSize:Number, bWordWrap:Boolean, bSelectable:Boolean, bMultiLine:Boolean, bBorder:Boolean, bAutoSize:Boolean, bEmbedFonts:Boolean):TextField{
var tf:TextField = target.createTextField(sInstance, target.getNextHighestDepth(), nX, nY, nWidth, nHeight);
var tFormatter:TextFormat = new TextFormat();
tFormatter.font = sFont;
tFormatter.bold = true;
tFormatter.size = nFontSize;
tf.type = sType;
tf.html = true;
tf.selectable = bSelectable;
tf.border = bBorder;
tf.multiline = bMultiLine;
tf.wordWrap = bWordWrap;
tf.autoSize = bAutoSize;
tf.embedFonts = bEmbedFonts;
tf.gridFitType = "none";
tf.htmlText = sText;
tf.setTextFormat(tFormatter);
return tf;
}
}
Beispiel
PHP-Code:
var tf:TextField = new TextField();
tf = TextMades.createHTMLText(this,"testText", "<b>Bolder</b>Text", 10 ,10, 160,100, "dynamic", "embedFont" ,22, true, true, true, true, true, true);
Gruss Boris