我在一周前开始学习ActionScript 3.0。我想做一个简单的游戏。它将以一个显示欢迎信息的窗口开始("按下按钮开始"),以及一个从文本开始并指向按钮的箭头。我想从代码创建一切。我使用TextField作为欢迎信息,但我遇到了一些麻烦。我为Destkop创建了一个.fla AIR文件。然后我将一个名为mainFunzioneModidificaTest.as的类与该文件相关联。在这个类中,我编写了一个函数来设置第一个窗口的文本。我使用TextFormat,但是当我运行.fla文件时,我看到文本但没有任何格式。颜色,尺寸和字体不会改变这是代码。有人能帮我吗?谢谢!
package {
import flash.display.MovieClip;
import flash.text.TextField;
import flash.text.TextFormat;
public class mainFunzioneModificaTest extends MovieClip {
public function mainFunzioneModificaTest() {
setText();
}
function setText(): void {
var text: TextField = new TextField();
var myFormat: TextFormat = new TextFormat("Arial", 39, 0xFF0000);
text.setTextFormat(myFormat);
text.text = "Hello";
addChild(text);
}
}
}
答案 0 :(得分:3)
您需要在调用setTextFormat()
之前先设置文字,或者使用text.defaultTextFormat = myFormat
;
使用TextField.defaultTextFormat属性在向TextField添加文本之前应用格式,并使用setTextFormat()方法在向TextField添加文本之后添加格式
在致电setTextFormat()
之前设置文字:
function setText(): void {
var text: TextField = new TextField();
var myFormat: TextFormat = new TextFormat("Arial", 39, 0xFF0000);
text.text = "Hello";
text.setTextFormat(myFormat);
addChild(text);
}
或设置defaultTextFormat
:
function setText(): void {
var text: TextField = new TextField();
var myFormat: TextFormat = new TextFormat("Arial", 39, 0xFF0000);
text.defaultTextFormat = myFormat;
text.text = "Hello";
addChild(text);
}