Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 26-07-2006, 12:27   #1 (permalink)
Togo
 
Registriert seit: Sep 2003
Beiträge: 87
Question Überblendungen mit mc und der Tweening Klasse

Hallo Forum,
habe in einem MC 3 andere MC's mit jeweils einem Bild.

Code:
import mx.transitions.Tween;
import mx.transitions.easing.*;
this.mc_lei_1._alpha = 0;
this.mc_lei_2._alpha = 0;
this.mc_lei_3._alpha = 0;
movie_array = new Array();
movie_array[1] = 'mc_lei_1';
movie_array[2] = 'mc_lei_2';
movie_array[3] = 'mc_lei_3';
var InterNum:Number;
slide_in = 1;
slide_out = 0;
startSlide();

function startSlide() {
	trace("num in: " + slide_in);
	trace("num out: " + slide_out);
	clearInterval(InterNum);
	trace("startSlide");
	trace(movie_array[slide_in]);
	movie_in = this[movie_array[slide_in]];
	trace("MIN: "+ movie_in);
	movie_out = this[movie_array[slide_out]];
	trace("Mout: "+ movie_out);
	move_in = new Tween(movie_in, "_alpha", Strong.easeIn, 0, 100, 5, true);
	move_out = new Tween(movie_out, "_alpha", Strong.easeOut, 100, 0, 5, true);
	move_out.onMotionFinished = function() {
		trace("stopSlide");
                setVar();
		InterNum = setInterval(startSlide, 2000);
	};
}


function setVar() {
	trace("setVar");
	if (slide_in < 3) {
		slide_in++;
	} else {
		slide_in = 1;
	}
	trace("SLIDE_IN: " + slide_in);
	if (slide_out < 3) {
		slide_out++;
	} else {
		slide_out = 1;
	}
	trace("SLIDE_OUT: " + slide_out);
}

stop();
Jetzt möchte ich einen nach dem Anderen ein / aus Blenden

Mein Problem. beim ersten Aufruf wird die Variable movie_in noch gesetzt.
Ab dem 2.Aufruf kommt nur im trace

MIN: undefined
Mout: undefined

Ich stehe völlig auf dem schlauch.

Tom
Tom Flash ist offline   Mit Zitat antworten
Alt 26-07-2006, 13:35   #2 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Hallo!

Durch den Aufruf über setInterval() ist das this in der Funktion falsch. Könnte man so wohl machen:
PHP-Code:
var tl this
function startSlide() {
    
trace("num in: " slide_in);
    
trace("num out: " slide_out);
    
clearInterval(InterNum);
    
trace("startSlide");
    
trace(movie_array[slide_in]);
    
movie_in tl[movie_array[slide_in]];
    
trace("MIN: "movie_in);
    
movie_out tl[movie_array[slide_out]];
    
trace("Mout: "movie_out);
    
move_in = new Tween(movie_in"_alpha"Strong.easeIn01005true);
    
move_out = new Tween(movie_out"_alpha"Strong.easeOut10005true);
    
move_out.onMotionFinished = function() {
        
trace("stopSlide");
                
setVar();
        
InterNum setInterval(startSlide2000);
    };
}
startSlide(); 
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 26-07-2006, 13:56   #3 (permalink)
Togo
 
Registriert seit: Sep 2003
Beiträge: 87
Thumbs up

Hallo Der Frage ,

danke, super , funzt.

Keine Gefahr mehr das mein Hirn bei diesen Temperaturen zu kochen anfängt.
Tom Flash ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 07:44 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele