Flash Diashow

Status
Nicht offen für weitere Antworten.

Webflasher

Mitglied
Hallo Leute,

ich bin mit meiner Website so gut wie fertig. Allerdings, muss ich mich jetzt mit einem Problem befassen, welches ich von Anfang an vor mir herschiebe:

Mehrere Diashows müssen her (die Längste wird wohl so an die 30 Bilder haben).

Ich habe mir zwar schon früher einfache Diashows erstellt. Diese waren allerdings immer sehr aufwendig, und die swf-Datei war sehr groß. Denn ich habe einfach mehrere Bewegungs-tweens aneinandergereiht.

Da ich in AS 3 ein Neuling bin würde es mich freuen, wenn ihr einen Lösungsvorschlag hättet, beidem man nicht allzu viel AS3 benutzen muss.

Toll wäre es also wenn es eine Lösung gäbe (kann auch gerne ein Link auf ein gutes Tutorial sein), bei der ich nicht so viel AS3 verwenden muss, bei der die End-Datei nicht so groß ist, bei der die Bilder eingeblendet werden und bei der es am besten noch Steuerungsbuttons gibt.

Ich weiß, das sind sehr viele Punkte, ich bin aber auch über Lösungen, die nicht alle Punkte erfüllen sehr dankbar.

Vielen Dank

P.S.: Ich habe schon im Internet gesucht, aber nicht mir schlüssiges gefunden. Ich möchte außerdem gerne kein Programm benutzen (außer natürlich Flash).
 
Du brauchst die Bilder doch garnicht in die swf einbinden, die kann man auch dynamisch einladen. Ich habe zufällig vor einiger Zeit mal ein Beispiel hingeklatscht. Ist nicht wirklich schöner Code, aber so kann mans machen.

Die Bilder müssen aber in einem Ordner "Bildwechsel" sein und 0_kl.jpg bis 9_kl.jpg heißen. Was du noch machen müsstest ist
-die Größe der Bühne an deine Bildergröße anpassen
-den Ordnernamen in der fla anpassen, wenn du mehrere Diashows zeigst
-die Variable "bilderzahl" anpassen an die Anzahl der Bilder. Bei 10 Bildern hast du die Dateien 0_kl.jpg bis 9_kl.jpg

Viel Spaß
 

Anhänge

  • Bildwechsel.fla
    64 KB · Aufrufe: 127
Die Bilder wechseln nicht, außerdem will ich die Bilder an die Bühne anpassen können...

Trotzdem Danke

habe bei einem anderen Forum, folgenden Code gefunden:

PHP:
mport mx.transitions.*;

//leeren MC erstellen
this.createEmptyMovieClip("con",1);

//zuerst transparent setzen
this.con._alpha = 0;

//Zähler
var index:Number = 0;

//Liste der Bilder
var urls:Array = new Array("bild1.jpg", "bild2.jpg","bild3.jpg");

//Anzahl der Bilder ermitteln über Länge des Arrays
var len:Number = urls.length;

//5 Sekunde = 5000 Millisekunden Pause zwischen den Bildern
var pause:Number = 5000;



function startLoader(){
	//Lauscher und MovieClipLoader-Instanz erstellen
	_root.mclListener = new Object();
	_root.mcLoader = new MovieClipLoader();
	_root.mcLoader.addListener(_root.mclListener);
	
	//und das erste Bild laden
	_root.mcLoader.loadClip("bild/"+_root.urls[index], _root.con);


	//Bild ist geladen und MC wurde befüllt:
	mclListener.onLoadInit = function(mc:MovieClip) {
		trace("fertig, beladen wurde "+mc);
		
		//MC auf die Bühnen-Mitte setzen:
		mc._x = int((Stage.width - mc._width)/1);
		mc._y = int((Stage.height - mc._height)/1);
		_root.fader(mc,true);
		
		_root.mclListener2.onLoadInit = function(mc:MovieClip) {
		
		_root.rechteck(_root.con.border_mc,"0xFFFFFF",0,mc._width+20,0,mc._height+20,1,0,100);
		_root.con.image_mc._x = 10;
		_root.con.image_mc._y = 10;
		
		//MC auf die Bühnen-Mitte setzen:
		_root.con._x = int((Stage.width - _root.con._width)/2);
		_root.con._y = int((Stage.height - _root.con._height)/2)-40;
		_root.shadows(_root.con);
		_root.fader(_root.con,true);
		
	}

		
	}  

}
function fader(mc,blende){
   //mc ist das ein- oder auszublendende Objekt
   //blende ist true oder false, d.h. blendet ein oder aus
	if(blende){
      //einblenden von alpha=0 bis alpha=100 in 0,6 Sekunden
      var tw1:Tween = new Tween(mc, "_alpha", mx.transitions.easing.None.easeNone, 0, 100, 0.6, true);
      tw1.onMotionFinished = function() {//wenn ausblenden beendet...
        _root.meineID = setInterval(_root,"weiter",_root.pause);//5 Sek Pause
      }
   }
   else{//ausblenden
      var tw2:Tween = new Tween(mc, "_alpha", mx.transitions.easing.None.easeNone, 100, 0, 0.6, true);
      tw2.onMotionFinished = function() {//wenn ausblenden beendet...
        _root.folgefilm();//nächsten Film laden und einblenden
      }
   }
}

//Intervall ist beendet
function weiter(){
	trace("Pause beendet");
	
	//Intervall wieder löschen
    clearInterval(_root.meineID);
	
	//aktuelles Bild ausblenden
	_root.fader(_root.con,false);
	
}

function folgefilm(){
	trace("folgefilm");
	 _root.index++;
	 
	//checken, ob das letzte Bild erreicht wurde
	if(_root.index == _root.len){
		//letztes Bild wurde gezeigt, wieder mit dem ersten Bild starten = Loop
		_root.index = 0;
	}
	_root.mcLoader.loadClip("bild/"+_root.urls[index], _root.con);
	
}


startLoader();

this.stop();

Möchte allerdings auch hier die Bildgröße an die Bühne anpassen lassen, hat jemand ne Idee...
 
Du kannst die Bilder an die Bühne anpassen, das habe ich in der fla selber mit nem Kommentar erklärt. Die Bilder wechseln alle 7 Sekunden, auch das ist in der fla auskommentiert.

Wenn du den Code in einem anderen Forum gefunden hast schlage ich vor, dass du auch dort fragst. Schließlich ist (hoffentlich) dort der Urheber des Codes zu finden.
 
Status
Nicht offen für weitere Antworten.

Neue Beiträge

Zurück