Adobe Flash [Flash CS3] Probleme mit relativen Pfaden in Flash

Diskutiere das Thema [Flash CS3] Probleme mit relativen Pfaden in Flash im Forum Web-Design

  1. BFBS

    BFBS Thread Starter Mitglied

    Beiträge:
    458
    Zustimmungen:
    16
    Mitglied seit:
    15.07.2006
    Moinsen,

    so seit langer Zeit widme ich mich mal wieder Flash und habe auch gleich ein Problem. Hoffe übrigens, dass die Überschrift für mein Problem so richtig gewählt ist.


    Und zwar folgendes:

    Ich habe eine SWF "main", in der sich das Menü befindet. Klickt man nun auf einen Menü-Button, so wird der entsprechende Beitrag (ext. swf) per loadmovie-Anweisung in ein leeres MC names "Beitrag" geladen. Soviel zum Aufbau ...

    Nun habe ich mir eine Gallery zusammengebastelt, bei der die Pfade zu den Bilder zunächst aus einer XML ausgelesen und anschließend in ein Array geladen werden. Lade ich nun diese Gallery in das MC "Beitrag" in der "Main" werden die Bilder nicht geladen. Wird ein Problem mit den "Zuordnungsebenen" sein - also parent, etc. - mir will der richtige Ausdruck gerade nicht einfallen.

    Wie löse ich mein Problem am Besten? Komme ich damit weiter, dass ich über all ein "this" vorsetze? Wenn ja, wo müsste ich das überall vorsetzen?

    Mein Script sieht übrigens so aus ...

    Code:
    // *************** Bilder in Array und Intialisierung *********************
    var XMLdaten:XML = new XML();
    XMLdaten.ignoreWhite = true;
    XMLdaten.load("bilder.xml");
    
    var images:Array = new Array ();
    var popup:Array = new Array ();
    var popup_width:Array = new Array();
    var popup_height:Array = new Array();
    
    
    XMLdaten.onLoad = function(success) 
    {
    if (success)
        {
    	for (var i = 0; i < XMLdaten.firstChild.childNodes.length; i ++)
    		{
    			images[i] = XMLdaten.firstChild.childNodes[i].attributes.source;
    			popup[i] = XMLdaten.firstChild.childNodes[i].attributes.full; 	
    			popup_width[i] = XMLdaten.firstChild.childNodes[i].attributes.width; 
    			popup_height[i] = XMLdaten.firstChild.childNodes[i].attributes.height;
    				}
    	trace (images);
    	}
    else
    	{
    	trace ("Fehler beim Laden");
    	}
    // Bilder wurden in ein Array geladen!
    		
    weiter.onRelease = function() {
        showNext();
    }
    
    back.onRelease = function() {
        showBack();
    }
    
    full.onRelease = function() {
    			
    	winX = (System.capabilities.screenResolutionX - popup_width[current])/2;
    	winY = (System.capabilities.screenResolutionY - popup_height[current])/2;
    		
    	getURL("javascript:window.open('"+popup[current]+"','','width="+popup_width[current]+",height="+popup_height[current]+",left="+winX+", top="+winY+", toolbar=no, menubar=no,location=no,status=no,resizable=no,scrollbars=no');void(0);");
    
    }
    
    showNext();
    // hier werden die möglchen Funktionen aufgerufen! Diese muss immer in der onLoad stehen
    }
    	
    // *************** Bilder Gallery *********************
    var current = -1;
    var path = "";
    
    var preload = holder.createEmptyMovieClip("preload", 1);
    holder._visible = false;
    
    var image = ct.createEmptyMovieClip("image", 1);
    ct._alpha = 0;
    
    loader._visible = false; 
    bgnd._visible = false;
    shadow._visible = false;
    full._alpha = 0;
    
    function showNext() {
        current ++;
        if (current >= images.length) current = 0;
        loadImg(images[current]);
    }
    
    function showBack() {
        current --;
        if (current < 0) current = images.length - 1;
        loadImg(images[current]);
    }
    
    function loadImg(path) {
    	_path = path;
    	preload.loadMovie(path);
    	//loader._x = int(bgnd._width / 2);
    	//loader._y = int(bgnd._height / 2);
    	loader.setPerc(0);
    	holder.onEnterFrame = function() {
    		var cur = preload.getBytesLoaded();
    		var max = preload.getBytesTotal();
    		if (cur > 10 && max > 10) {
    			var p = cur * 100 / max;
    			loader._visible = true;
    			loader.setPerc(p);
    			if (p >= 100) {
    				delete holder.onEnterFrame;
    				loader._visible = false;
    				 bgnd._visible = true;
    				 shadow._visible = true;
    				 hideImg();
    				 hideFull();
    			}
    		}
    	}
    }
    
    function hideImg() {
    	ct.onEnterFrame = function() {
    		this._alpha += (0 - this._alpha) / 3;
    		if (this._alpha <= 1) {
    			this._alpha = 0;
    			delete this.onEnterFrame;
    			swapImg();
    		}
    	}
    }
    
    function swapImg() {
    	image.loadMovie(_path);
    	reScale(preload._width, preload._height);
    }
    
    function reScale(w, h) {
    	image._x = -w / 2;
    	image._y = -h / 2;
    	w += 15;
    	h += 15;
    	this.onEnterFrame = function() {
    		bgnd._width += (w - bgnd._width) / 2;
    		bgnd._height += (h - bgnd._height) / 2;
    		shadow._width = bgnd._width;
    		shadow._height = bgnd._height;
    		weiter._x = int(bgnd._width / 2);
    		weiter._y = 0;
    		back._x = int(-bgnd._width / 2);
    		back._y= 0;
    		full._x = int(bgnd._width / 2) - 25;
    		full._y = int(bgnd._height / 2) - 25;	
    		
    		if (Math.abs(w - bgnd._width) < 1 && Math.abs(h - bgnd._height) < 1) {
    			bgnd._width = w;
    			bgnd._height = h;
    			shadow._width = bgnd._width;
    			shadow._height = bgnd._height;
    			delete this.onEnterFrame;
    			showImg();
    			showFull();
    		}
    	}
    }
    
    function showImg() {
    	ct.onEnterFrame = function() {
    		this._alpha += (100 - this._alpha) / 3;
    		if (this._alpha >= 99) {
    			this._alpha = 100;
    			delete this.onEnterFrame;
    		}
    	}
    }
    
    function showFull() {
    	full.onEnterFrame = function() {
    		this._alpha += (100 - this._alpha) / 3;
    				if (this._alpha >= 99) {
    			this._alpha = 100;
    			delete this.onEnterFrame;			
    		}
    	}
    }
    
    
    function hideFull() {
    	full.onEnterFrame = function() {
    		this._alpha += (0 - this._alpha) / 3;
    		if (this._alpha <= 1) {
    			this._alpha = 0;
    			delete this.onEnterFrame;
    			
    		}
    	}
    }
    
    
    mfg
    BFBS
     
Die Seite wird geladen...
Ähnliche Themen - [Flash CS3] Probleme
  1. miles-unlimited
    Antworten:
    0
    Aufrufe:
    850
  2. erikvomland
    Antworten:
    5
    Aufrufe:
    878
  3. erikvomland
    Antworten:
    5
    Aufrufe:
    1.167
  4. macobi
    Antworten:
    0
    Aufrufe:
    1.395
  5. JacenTalon
    Antworten:
    7
    Aufrufe:
    782

MacUser.de weiterempfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Akzeptieren Weitere Informationen...