Flash as3 I';我迷路了,如何移动不同的文本对象?
我最近开始摆弄as3,它看起来很不错,问题是我来自as2,我完全迷路了 我尝试从4个文本文件中导入文本,然后将它们移到另一个文本文件的顶部: text1 x=100,text2x=150,text3x=200等 这就是我被困的地方:Flash as3 I';我迷路了,如何移动不同的文本对象?,flash,actionscript-3,Flash,Actionscript 3,我最近开始摆弄as3,它看起来很不错,问题是我来自as2,我完全迷路了 我尝试从4个文本文件中导入文本,然后将它们移到另一个文本文件的顶部: text1 x=100,text2x=150,text3x=200等 这就是我被困的地方: import flash.display.MovieClip; import flash.display.Loader; import flash.events.*; import flash.net.URLRequest; import caurina.trans
import flash.display.MovieClip;
import flash.display.Loader;
import flash.events.*;
import flash.net.URLRequest;
import caurina.transitions.Tweener;
var myTextLoader:URLLoader = new URLLoader();
var myTextField_txt:TextField = new TextField();
myTextField_txt.wordWrap=true;
myTextField_txt.autoSize=TextFieldAutoSize.CENTER;
var i:int = 0;
var ipsilon:int = 200;
for(i;i<5;i++) {
myTextLoader.addEventListener(Event.COMPLETE, onLoaded);
myTextLoader.load(new URLRequest("text"+i+".txt"));
}
function onLoaded(e:Event):void {
var testo = e.target.data;
styleMe(testo);
}
function styleMe(testo){
//Associamo il testo alla variabile
myTextField_txt.text = testo;
//Formato Carattere
var myFormat:TextFormat = new TextFormat();
myFormat.size = 15;
myFormat.align = TextFormatAlign.CENTER;
myTextField_txt.defaultTextFormat = myFormat;
//Formato Varie
myTextField_txt.textColor = 0x000000;
myTextField_txt.border = true;
myTextField_txt.borderColor = 0x999999;
myTextField_txt.width = 200;
myTextField_txt.height = 20;
myTextField_txt.background = true;
myTextField_txt.backgroundColor = 0xFFCC00;
//Posizione
myTextField_txt.x = 0;
myTextField_txt.y = -100;
var text1 = addChild(myTextField_txt);
tweenMe(text1);
}
function tweenMe(text1){
Tweener.addTween(text1, {x:450,y:200, time:5});
}
导入flash.display.MovieClip;
导入flash.display.Loader;
导入flash.events.*;
导入flash.net.URLRequest;
导入caurina.transitions.Tweener;
var myTextLoader:URLLoader=新的URLLoader();
var myTextField_txt:TextField=new TextField();
myTextField_txt.wordWrap=true;
myTextField_txt.autoSize=TextFieldAutoSize.CENTER;
变量i:int=0;
var ipsilon:int=200;
对于(i;iuhm),将有一个黑客解决方案…但您应该尝试一个干净的解决方案,使用类
我不完全确定您想做什么,但这应该可以做到:
package {
import caurina.transitions.Tweener;
import flash.events.Event;
import flash.net.*;
import flash.text.*;
public class MyText extends TextField {
private var _tweenParams:Object;
public function MyText(location:String, tweenParams:Object, initVars:Object = null) {
this._tweenParams = { };
for (var name:String in tweenParams) this._tweenParams[name] = tweenParams[name];
for (name in initVars) this[name] = initVars[name];
(new URLLoader(new URLRequest(location))).addEventListener(Event.COMPLETE, onLoad);
var myFormat:TextFormat = new TextFormat();
myFormat.size = 15;
myFormat.align = TextFormatAlign.CENTER;
this.defaultTextFormat = myFormat;
this.textColor = 0x000000;
this.border = true;
this.borderColor = 0x999999;
this.width = 200;
this.height = 20;
this.background = true;
this.backgroundColor = 0xFFCC00;
}
private function onLoad(e:Event):void {
this.text = e.target.data;
Tweener.addTween(this, this._tweenParams);
}
}
}
然后像这样使用它:
this.addChild(new MyText("text1.txt",{x:0,y:0, time:5},{y:-100}));
this.addChild(new MyText("text2.txt",{x:200,y:0, time:5},{y:-100}));
this.addChild(new MyText("text3.txt",{x:400,y:0, time:5},{y:-100}));
this.addChild(new MyText("text4.txt",{x:600,y:0, time:5},{y:-100}));
希望这有助于
格里茨
back2dos看起来是正确的。但它抛出了以下错误:5000:类“Main”必须子类“flash.display.MovieClip”,因为它链接到该类型的库符号。即使我添加了:import flash.display.MovieClip',它也会抛出相同的错误;不管怎样,我使用了MyText.as作为文档类。在主框架中导入它之后一切都正常,但我不明白为什么。。