使用更简单的代码段更新
我正在构建一个Flash swf来使用AS3检查一些XML文件。
我只能访问Flex编译器,而不是实际的Flash IDE或Flashdevelop,所以我的所有xml检查代码都是一个AS文件,编译成swf。为了显示信息,我创建并添加一个TextField并调用appendText()(我在此片段中使用+ =)。
下面的代码段似乎没有在现有文字上设置新格式。它似乎对文本没有任何影响。
我的印象是setTextFormat会更改现有文本,并且在调用setTextFormat之后添加的任何新文本都将使用defaultTextFormat对象。在我的代码中似乎不是这种情况。我的理解不正确吗?
public function AS3Tester()
{
display_txt = new TextField();
display_txt.multiline = true;
display_txt.width = 1024;
display_txt.height = 768;
var tf:TextFormat = new TextFormat();
tf.size = 12;
tf.font = "Lucida Console";
display_txt.defaultTextFormat = tf;
display_txt.text = "Text Before setTextFormat\n"; //Should use default style tf
addChild(display_txt);
var tf2:TextFormat = new TextFormat();
tf2.size = 18;
tf2.color = 0xFF0000;
display_txt.setTextFormat(tf2);
display_txt.text += "Text after setTextFormat\n"; //previous line should use tf2, this new line should use default tf
}