我有一个TextField
格式为粗体和蓝色。但是,当我更改TextField.text
时,textfield
的格式会重置,我必须再次setTextFormat
。
这是我用来设置TextField
的代码。 myText
是我TextField
的变量。 (这只是我的代码的一部分;它是我EventListener
的函数的一部分。)
yourName = body_txt.text;
myText.text = "This is the new text";
答案 0 :(得分:13)
在AS3中,您需要使用defaultTextFormat
对象的TextField
属性。
答案 1 :(得分:4)
myTextField.defaultTextFormat = myTextField.getTextFormat();
myTextField.text = "Sample text.";
希望这有帮助!
答案 2 :(得分:2)
您应该使用setNewTextFormat
代替,这将影响未来的更改。
或者,可选地(如果您已经有一些文本),将新格式应用于两个属性:
var myTextField:TextField = new TextField();
myTextField.text = "Chunky bacon" ;
var newFormat:TextFormat = new TextFormat();
newFormat.color = 0xFF0000;
newFormat.size = 18;
newFormat.underline = true;
newFormat.italic = true;
myTextField.setTextFormat( newFormat ) ; // Applies to current value – "Chunky bacon"
myTextField.setNewTextFormat( newFormat ) ; // Applies to future changes - " Hello World"
myTextField.text += " Hello World" ;