Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 29-10-2006, 11:29   #1 (permalink)
Neuer User
 
Registriert seit: Jan 2006
Beiträge: 97
Array Problem bei Button-Ebenen Zuweisung mit Fade Funktion

Hallo habe ein kleines problem mit meiner array abfrage. habe gleich mal mein ganzes script zum vertädnis gepostet. made by flashforum usern. im zweiten scriptteil soll einfach nur wenn der button von der 0 bzw 1 stelle des array angesprochen wird dazu auch die ebene des zweiten array von der 0 bzw 1 stelle angesprochen werden. also news zu ebene1.swf und contact zu ebene2.swf. wenn ich ebene[0] reinschreibe, klappt es aber halt nicht mit ebene[i] und wie bekomme ich es hin, dass alle button außer des eben geklickten wieder aktiv sind. habe schon mit ! rumprobiert. klappt irgendwie nicht.



PHP-Code:
this.createEmptyMovieClip("haupt",1);
import mx.transitions.*; 
import mx.transitions.easing.*; 
function 
fadeInObj(target:MovieClip):Void 


    var 
tm:Tween = new Tween(target"_alpha"None.easeNone01001true); 
    
tm.onMotionFinished = function() 
    { 
        
delete this// löscht tm -> kannst aber auch lassen 
    
}; 
}; 

function 
fadeOutObj(target:MovieClipurl:String):Void 

    var 
tm:Tween = new Tween(target"_alpha"None.easeNone10001true); 
    
trace(tm); 
    
tm.onMotionFinished = function() 
    { 
        
delete this// löscht tm -> kannst aber auch lassen 
        
unLoadClip(target); // alten clip zur sicherheit entfernen 
        
doLoadClip(urltarget); // läd neuen clip 
    
}; 


function 
unLoadClip(target:MovieClip):Void 

    var 
mLoader:MovieClipLoader = new MovieClipLoader(); 
    
mLoader.unloadClip(target); 


function 
doLoadClip(url:Stringtarget:MovieClip):Void 

    
trace(url); 
    var 
mLoader:MovieClipLoader = new MovieClipLoader(); 
    var 
mListener:Object = {}; 
    
mListener.onLoadStart = function(target:MovieClip
    { 
        
trace("Lade "target); 
    }; 
    
mListener.onLoadProgress = function(target:MovieClipbytesLoaded:NumberbytesTotal:Number
    { 
        
trace("Lade "target +" "bytesLoaded); 
    }; 
    
mListener.onLoadInit = function(target:MovieClip
    { 
        
delete this// mListener löschen 
        // fadeInObj aufrufen, wenn neuer clip komplett geladen ist 
        
fadeInObj(target); 
    }; 
    
mLoader.addListener(mListener); 
    
mLoader.loadClip(urltarget); 
}; 
Hierum geht:

PHP-Code:
var button : Array =["news","gallery"];
var 
ebenen : Array =["ebene1.swf","ebene2.swf"];
for(
i=0;i<=button.length;i++){
    
this[button[i]].active=true;
    };
    
for (
i=0;i<=1;i++){ 
    
    
this[button[i]].onRelease = function(){ 
      if ( 
this.active ) {
          
fadeOutObj(hauptebenen[i]);// <- Hier möchte ich zu dem zugehörigen Button die richtige swf laden.

       
this.active false;
     
//  this[button[i]].active = true;//<- Hier sollen alle Button wieder auf true gestellt werden außer der eben geklickte.
       
}}} 
Tielmann ist offline   Mit Zitat antworten
Alt 29-10-2006, 11:33   #2 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Hallo!

Wozu brauchst du diesen "active"-Krams? Reicht das nicht so:
PHP-Code:
var button:Array = ["news""gallery"];
var 
ebenen:Array = ["ebene1.swf""ebene2.swf"];
for (
i=0i<=1i++) {
    
this[button[i]].id i
    this
[button[i]].onRelease = function() {
        if (
_root.last_btn != this) {
            
fadeOutObj(hauptebenen[this.id]);
            
// <- Hier möchte ich zu dem zugehörigen Button die richtige swf laden. 
            
_root.last_btn this
            
//  this[button[i]].active = true;//<- Hier sollen alle Button wieder auf true gestellt werden außer der eben geklickte. 
        
}
    };

__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 29-10-2006, 11:36   #3 (permalink)
Neuer User
 
Registriert seit: Jan 2006
Beiträge: 97
weil ich sonst die swf mit dem button wieder und wieder lade. und das will ich verhindern. deshalb auch das false des geklickten aber der viell davor geklickte muss ja wieder auf true. hoffe du verstehst was ich meine
Tielmann ist offline   Mit Zitat antworten
Alt 29-10-2006, 11:39   #4 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Mein Script mal ausprobiert?
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 29-10-2006, 11:42   #5 (permalink)
Neuer User
 
Registriert seit: Jan 2006
Beiträge: 97
habe erst auf deinen post geantwortet und dann probiert...danke danke alles klappt. daum hoch...schön sonntag wünsch ich noch
Tielmann ist offline   Mit Zitat antworten
Alt 29-10-2006, 14:50   #6 (permalink)
Neuer User
 
Registriert seit: Jan 2006
Beiträge: 97
nun habe ich doch noch ein anliegen.
möchte die position der zu ladenen swfs auch in 2 arrays festlegen und dann entsprechend auslesen.

PHP-Code:
var button:Array = ["news""gallery"]; 
var 
ebenen:Array = ["news.swf""contact.swf"];
var 
posx:Array = [0100];
var 
posy:Array = [50100];
this[button[0]].enabled true;// = gibts hierfür auch eine andere lösung, sodass der mouse finger noch zu sehen ist und nicht nur der pfeil.
this.active false;
fadeOutObj(hauptebenen[0]);//news wird als erstes eingefadet
for (i=0i<=button.lengthi++) { 
    
this[button[i]].id 
    this
[button[i]].onRelease = function() { 
        if (
_root.last_btn != this) { 
            
fadeOutObj(hauptebenen[this.id]); 
            
//this[ebenen[i]]._x = posx[i]; Hier habe ich mal bissel rumprobiert aber leider zu keinem ergebnis
            //ebenen[this.id]._y = posy[this.id];
            //ebenen[this.id]._x = (Stage.width-ebenen[this.id]._width)/2; 
           
_root.last_btn this 
              
        

    }; 

Tielmann ist offline   Mit Zitat antworten
Alt 29-10-2006, 15:57   #7 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Du musst ja auch die Koordinaten von "haupt" ändern und nicht vom nachzuladenden swf.
Solltest du allerdings in der doLoadClip-Funktion machen, da du sonst den Film vor dem Ausfaden verschiebst.
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager 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 11:31 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele