Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 07-01-2006, 16:56   #1 (permalink)
Neuer User
 
Benutzerbild von BoRiZ
 
Registriert seit: Jan 2006
Ort: Nu City, HB
Beiträge: 3
externe swf preloaden

mointe!

hab da ein problem...

ich hab in meinem haupt-swf mehere externe swf per as in die hauptzeitleiste geladen... wenn ich nun die methode _root.getBytesTotal() aufrufe, werden
dann die von extern geladenen swf berücksichtigt? wenn nicht, wie erreiche ich, dass der preloader diese mit berücksichtigt?

hier ein code-Stück:

//preloader
var geladen:Number = _root.getBytesLoaded();
var total:Number = _root.getBytesTotal();
var prozent:Number = Math.round((geladen/total)*100);
bar_mc._xscale = prozent;
anzeige_t.text = prozent;

if(geladen == total)
{
_root.nextFrame();
}
else
{
_root.gotoAndPlay(1);
}

// der movieClips nehmen die swf-inhalte auf
//home
createEmptyMovieClip("home_mc",1);
home_mc.loadMovie("sites/home.swf");
home_mc._y=180;

//info
createEmptyMovieClip("info_mc",2)
info_mc.loadMovie("sites/info.swf");
info_mc._y=100;

...

function hideAllMC()
{
home_mc._visible =false;
info_mc._visible =false;
booking_mc._visible =false;
pics_mc._visible =false;
videos_mc._visible =false;
trace("MovieClips hidden.");
}
function showMC( mc:MovieClip)
{
hideAllMC();
mc._visible=true;
trace(mc._name + " visible.");
}


PS: war in eile.... hab sicher wichtige infos vergessen etc... sry

MfG BoRiZ
BoRiZ ist offline   Mit Zitat antworten
Alt 07-01-2006, 17:26   #2 (permalink)
°.oO°O.o°.oO.o°O
 
Benutzerbild von bamboocha
 
Registriert seit: Jun 2005
Ort: CH
Beiträge: 1.490
Will heissen, du willst den Haupt-SWF ebenfalls von extern preloaden?
Tolle Sache!
Wie stellst du dir das vor? Da müsstest du ja dem eigentlichen Hauptfilm schon sagen, er müsse die Grösse aller Dateien zusammenrechnen. Denn von wo will der Film wissen, was noch alles geladen wird, wenn der zu ladende Film noch nicht fertig geladen ist und dementsprechend noch gar nicht weiss, dass er noch was nachladen wird?
Gesehen, was ich sagen will?
__________________
There is no way to happiness, happiness is the way! - Buddha
bamboocha ist offline   Mit Zitat antworten
Alt 07-01-2006, 18:12   #3 (permalink)
Neuer User
 
Benutzerbild von BoRiZ
 
Registriert seit: Jan 2006
Ort: Nu City, HB
Beiträge: 3
hi bamboocha,

jo schon klar! ich suche bei genau diesem ansatz. der hauptfilm soll die informationen des ladefortschritts, der mit loadMovie() geladenen movieClips nutzen.

so in richtung:

var geladen:Number = _root.getBytesLoaded() + _root.home_mc.getBytesLoaded;
var total:Number = _root.getBytesTotal() + _root.home_mc.getBytesTotal();

der ansatz ist unsinnig, sofern der player erst den haupt-swf fertig laden muss um weitere swf nachzuladen...

wie sehen die alternativen aus?

MfG BoRiZ
BoRiZ ist offline   Mit Zitat antworten
Alt 07-01-2006, 19:54   #4 (permalink)
°.oO°O.o°.oO.o°O
 
Benutzerbild von bamboocha
 
Registriert seit: Jun 2005
Ort: CH
Beiträge: 1.490
Ja, das ist es ja, er muss ihn zuerst laden!
Darum könntest du halt evtl versuchen, die Grösse der anderen heraus zu finden, dynamisch ist das aber aus meiner Sicht nicht machbar, da du jeweils wissen musst, welche Filme noch nachgeladen werden!
__________________
There is no way to happiness, happiness is the way! - Buddha
bamboocha ist offline   Mit Zitat antworten
Alt 10-01-2006, 01:04   #5 (permalink)
Neuer User
 
Benutzerbild von BoRiZ
 
Registriert seit: Jan 2006
Ort: Nu City, HB
Beiträge: 3
hab jetzt ne lösung... wonach ich im wesentlichen gesucht habe, war die klasse MovieClipLoader. jetzt werden alle swf mit ladestatusanzeige geladen.

das resultat findet ihr unter http://www.reballworld.de

hier ein code-stück mit meiner function zum preloaden der swf.

Code:
function loadMC(clipName:String, y:Number, depth:Number) 
{
	trace("loading "+clipName);
	var observer:Object = new Object();
	observer.onLoadStart = function(xxx:MovieClip) 
	{
		trace("start");
		label_mc._visible=true;
		bar_mc._visible=true;
		anzeige_tf._visible=true;
	};
	observer.onLoadProgress = function(mc:MovieClip, loaded:Number, total:Number) 
	{
		trace("lade");
		var prozent:Number = Math.round((loaded/total)*100);
		bar_mc._xscale = prozent;
		anzeige_tf.text = prozent;
	};
	observer.onLoadComplete = function(mc:MovieClip) 
	{
		trace("fertig");
		label_mc._visible=false;
		bar_mc._visible=false;
		anzeige_tf._visible=false;
	};
	observer.onLoadInit = function(mc:MovieClip) 
	{
		mc._y = y;
		trace("initialisiert");
	};
	var loader:MovieClipLoader = new MovieClipLoader();
	loader.addListener(observer);
	createEmptyMovieClip(clipName, 1);
	loader.loadClip("sites/"+clipName+".swf", clipName);
}
BoRiZ 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 09:03 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele