Textfeld ausfaden funktioniert nicht

Jan-Frederik Stieler

Monsterator
Moderator
Hallo,
ich habe diesen Code hier verwendet um ein Textfeld zu erstellen und nach einer bestimmten Zeit auszufaden. Nur leider funktioniert das mit dem Textfeld nicht.
Mit einem einfachen MC funktioniert der Code aber also kann der Fehler da nicht liegen.
Kann es vielleicht sein das man einem Textfeld kein Alpha zuweisen kann?

PHP:
//textfeld für ESC
this.createTextField("test", 7, 0, 315, Stage.width, 30); //instanceName: String, depth: Number, x: Number, y: Number, width: Number, height: Number

//eingebettete Schrift
var myfont:TextFormat = new TextFormat();
myfont.font = "univers";

//aussehen des Textfeldes
test.type = "static";
test.border = true;
test.borderColor = 0xf3f3f3;
test.alpha = 80;
test.background = true;
test.backgroundColor = 0xf3f3f3;
test.password = false;
test.multiline = false;
test.html = false;
test.embedFonts = false;
test.setTextFormat(myfont);
test.selectable = false;
test.wordWrap = false;
test.autoSize = "center";
test.text = "Mit ESC kann wieder in die Normalansicht geschaltet werden";

instanzname = "test";
speed = 2;

invisible = function(test,speed) {
    test.speed = speed;
    test.onEnterFrame = function() {
        this._alpha -= speed;  
        if (this._alpha <= 0) {
            clearInterval(myInterval);
        }
    }
}

myInterval = setInterval(invisible,3000,eval(instanzname),speed);

Gruß udn gute Nacht
 
Hallo,
um ein Textfeld zu faden muss die Schriftart eingebettet sein.

Verwirrend, dass du gleichzeitig einen Thread zum Einbetten von Schriftarten laufen hast.

Grüße
.
 
Hi,
also das Problem mit dem Textfeld wurde ja nun gelöst.
Die Ausfadenfunktion funktioniert trotzdem noch nicht. Genausowenig die Angabe des Alphwertes weiter oben.
Also wieder zum Anfang des Beitrages.

Gruß
 
Hi,

auf Textfeldern können keine onEnterFrame-Methoden definiert werden.

Übrigens: Was soll der Schmarren mit "eval"? Gib doch test einfach direkt als Parameter an:
Code:
myInterval = setInterval(invisible,3000,test,speed);

Übrigens #2: Ich hoffe, Du denkst daran, das Intervall auch wieder zu löschen (am besten zu Beginn der Funktion "invisible")?

Gruß
.
 
Zurück