Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 11-10-2006, 17:47   #1 (permalink)
Neuer User
 
Registriert seit: Dec 2001
Ort: Berlin
Beiträge: 26
Question swapDepths + Bildergalerie

Hallo,

ich bräuchte Unterstützung bei einer swapDepth Aufgabenstellung.
Das Ziel ist eine Fotogalerie, bei der die Bilder dynamisch aus einem Ordner in den Hauptfilm geladen werden.

Die Navigation durch die Galerie erfolgt per Vor/Zurück-Button. Alle „attachten“ Bilder haben eine bestimmte Tiefe, welche durch die Schaltflächen gesteuert werden soll. Hier genau liegt der Hund begraben. Der Code für die Buttons lautet:

Code:
// Schaltflächen
// Vor-Button
_root.but_next.onRelease = function() {
	for(var i=1; i<bildanzahl+1; i++){
		trace(_root[i].getDepth());
		// Tiefe ermitteln
		// Tiefe nimmt Werte zwischen 1 und bildanzahl an
		// wenn Objekt auf höchster "Ebene", dann Tiefe auf 1 setzen, ansonsten Tiefe um 1 erhöhen
		if (_root[i].getDepth() == bildanzahl) {
			_root[i].swapDepths(1);			
		} else {
			_root[i].swapDepths(tiefe++);
		}		
	}
	txt_current++;
};
// Zurück-Button
_root.but_prev.onRelease = function() {
	for(var i=1; i<bildanzahl+1; i++){
		trace(_root[i].getDepth());
		if (_root[i].getDepth == 1) {
			_root[i].swapDepths(bildanzahl);						
		} else {
			_root[i].swapDepths(tiefe--);
		}		
	}
	txt_current--;
};
Eine abgespeckte Version der Galerie siehe Anlage.

Hat jemand eine Idee?

Besten Dank.
Angehängte Dateien
Dateityp: zip galerie.zip (17,8 KB, 21x aufgerufen)
__________________
www.mcflash.de
MCFlash ist offline   Mit Zitat antworten
Alt 11-10-2006, 17:51   #2 (permalink)
Neuer User
 
Registriert seit: Dec 2001
Ort: Berlin
Beiträge: 26
Die mathematische Hintergrundüberlegung ist, so denke ich, richtig. Für den möglichen Ablauf für 5 Bilder habe ich eine Grafik erstellt.
Es scheint so, als ob einzelne attachte Bilder mit ihren jeweiligen Tiefen überschrieben werden!?
Angehängte Grafiken
Dateityp: gif swapDepth.gif (4,5 KB, 18x aufgerufen)
__________________
www.mcflash.de
MCFlash ist offline   Mit Zitat antworten
Alt 11-10-2006, 23:00   #3 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
Wenn ich das richtig verstanden habe, willst du 5 Bilder auf diverse Tiefen laden und einzeln anzeigen. Warum machst du dir dann das Leben nicht leichter und lässt die MCs einfach auf ihren Tiefen liegen und steuerst das Ganze über die _visible-Eigenschaft der MCs? Merk dir die letzte Nummer, mach den MC mit der Nummer unsichtbar und den MC mit der neuen Nummer sichtbar. Du solltest dazu natürlich die attachten MCs nicht direkt auf die Hauptzeitleiste klatschen, sondern in MC-Container legen, also bspw.:

PHP-Code:
mc this.createEmptyMovieClip("holder"+tiefe,tiefe);
mc.attachMovie("contclip"nNametiefe); 

Geändert von agedoubleju (11-10-2006 um 23:03 Uhr)
  Mit Zitat antworten
Alt 15-10-2006, 11:58   #4 (permalink)
Neuer User
 
Registriert seit: Dec 2001
Ort: Berlin
Beiträge: 26
Agedoubleju, danke für deinen Lösungsansatz!
Ich habe die Tiefenproblematik mit getNextHighestDepth() umgangen, wodurch ein MC auf die nächste verfügbare Tiefe gelegt wird. Somit werden die MCs in ihren Tiefen nicht mehr überschrieben.
Der Idee mit der _visible-Eigenschaft von MCs werde ich auch noch mal nachgehen. Mit dieser Methode ist die Galerie sicherlich flexibler.

Als Anlage eine aktualisierte Version der Galerie…
Angehängte Dateien
Dateityp: zip galerie.zip (16,8 KB, 22x aufgerufen)
__________________
www.mcflash.de
MCFlash 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 08:59 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele