Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 02-08-2004, 07:48   #1 (permalink)
Neuer User
 
Benutzerbild von destroy90210
 
Registriert seit: Feb 2002
Ort: wien
Beiträge: 458
jpg im mc ergibt 0 kb

hi
also ich lade per attachMovie jpgs in einem mc und den mc will ich dann preloaden, leider ergibt das immer null wenn ich das trace...
kan es sein das er da nicht die kb vom bild rechnet sondern einfach nur die vom mc weil zu beginn sind ja die kb des bildes bei null
und wenn ich die kompletten kb des jpg abfrage bekomme ich nur ein undefined... ;(

hier der code wie muss man das richtig schreiben das ich die ganzen kb des bildes bekomme

PHP-Code:
loadPicture = function (bilderArray) {
    for (
i=0i<bilderArray.lengthi++) {
        
_root.mcAlleBilder.createEmptyMovieClip("mcBild"+bilderArray[i], i);
        
// alle movieclips der bilder unsichtbar machen
        
_root.mcAlleBilder["mcBild"+bilderArray[i]]._alpha 0;
        
// reinladen der bilder in die movieclips
        
loadMovie("../bilder/"+dataArray[i]+".jpg""_root.mcAlleBilder.mcBild"+bilderArray[i]);
        
//hier will ich den preloader für jedes einzelne bild dann bauen
        
gesamt = ["../bilder/"+dataArray[i]+".jpg"].getBytesTotal();
//ergibt leider undefined
        
trace(gesamt);
gesamt =  _root.mcAlleBilder["mcBild"+bilderArray[i]].getBytesTotal();
//ergibt leider 0
        
trace(gesamt);
    }
    
// erstes bild sichtbar machen nachdem alle geladen worden sind
    
_root.mcAlleBilder["mcBild"+bilderArray[0]]._alpha 100;
}; 
mfg,
destroy90210
destroy90210 ist offline   Mit Zitat antworten
Alt 02-08-2004, 07:54   #2 (permalink)
pensionist
 
Benutzerbild von troner
 
Registriert seit: Jan 2003
Ort: Thalheim b. Wels
Beiträge: 568
hi!

typisches pfadproblem du lädst ja gar nix!
du mußt schreiben _root["alleBilder"+dataArray[i]].loadMovie("../bilder"+blalala);!

dann klappst auch mit dem "prozent"!

mfg
troner ist offline   Mit Zitat antworten
Alt 02-08-2004, 08:01   #3 (permalink)
Neuer User
 
Benutzerbild von destroy90210
 
Registriert seit: Feb 2002
Ort: wien
Beiträge: 458
ok thx
werds dann am abend gleich versuchen obs klappt

ok habs doch noch schnell versucht bevor ich die arbeite fahre aber leider kommt da noch immer 0 raus

PHP-Code:
_root.mcAlleBilder["mcBild"+bilderArray[i]].loadMovie("../bilder/"+bilderArray[i]+".jpg");
        
gesamt _root.mcAlleBilder["mcBild"+bilderArray[i]].getBytesTotal();
        
trace(gesamt); 
mfg,
destroy90210

Geändert von destroy90210 (02-08-2004 um 08:08 Uhr)
destroy90210 ist offline   Mit Zitat antworten
Alt 02-08-2004, 08:12   #4 (permalink)
pensionist
 
Benutzerbild von troner
 
Registriert seit: Jan 2003
Ort: Thalheim b. Wels
Beiträge: 568
hi!

sind doch mehr fehler drin!
habs dir mal umgeschrieben!
hier der code aber "vorsicht ungetestet":

Code:
loadPictures = function() {
	for(var i = 0; i<bilderArray.length; i++) {
		_root.mcAlleBilder.createEmptyMovieClip(_root.mcAlleBilder["mcBild"+bilderArray[i]], i);
		_root.mcAlleBilder["mcBild"+bilderArray[i]]._alpha = 0;
		_root.mcAlleBilder["mcBilder"+bilderArray[i]].loadMovie("../bilder"+bilderArray[i]);
		
		_root.onEnterFrame = function() {
			gesamt = _root.mcAlleBilder["mcBild"+bilderArray[i]].getBytesTotal();
		geladen = _root.mcAlleBilder["mcBild"+bilderArray[i]].getBytesLoaded();
prozent = int(geladen/prozent*100);
trace(prozent);
			if(prozent == 100) {
				delete _root.onEnterFrame();
			}
	}
}

mfg

edit:ups

Geändert von troner (02-08-2004 um 10:21 Uhr)
troner ist offline   Mit Zitat antworten
Alt 02-08-2004, 10:07   #5 (permalink)
querdenker
 
Benutzerbild von kelor
 
Registriert seit: Jun 2001
Ort: formel1-stadt hockenheim
Beiträge: 4.731
sagt mal..was soll denn das sein, was ihr da postet...?

wenn ihr mal alle vars in einen stetige abfrage legt, dann wird´s auch was mit irgendwann mal 100.

außerhalb des enterframes nutzen die nüscht, aber auch rein gar nüscht...


greetz

kelor
kelor ist offline   Mit Zitat antworten
Alt 02-08-2004, 10:19   #6 (permalink)
pensionist
 
Benutzerbild von troner
 
Registriert seit: Jan 2003
Ort: Thalheim b. Wels
Beiträge: 568
ups!

ist schon ausgebessert!
tschuldigung war noch ziemlich früh!
troner ist offline   Mit Zitat antworten
Alt 02-08-2004, 19:42   #7 (permalink)
Neuer User
 
Benutzerbild von destroy90210
 
Registriert seit: Feb 2002
Ort: wien
Beiträge: 458
hi leider geht das noch immer nicht habe jetzt selber noch ne stunde ca rumversucht aber leider gehts noch immer nicht

also ich habe mal versucht für jeden prelaoder ein eigenen onEnterFrame zu erstellen das sie sich nicht überschreiben... aber jetzt passiert nur das
also das kriege ich getraced...

hier mal der code was ich noch so versucht habe, irgendwie will das ned hinhaun ;(

Code:
mc:_level0.mcAlleBilder.mcBild3
prozent:0
mc:_level0.mcAlleBilder.mcBild2
prozent:0
mc:_level0.mcAlleBilder.mcBild1
prozent:0
aja hat wer nen plan warum als erstes mcBild3 steht ?? und nicht 1 ??

PHP-Code:
//Bilder laden mit der jeweiligen ID
loadPictures = function (bilderArray) {
    for (var 
0i<bilderArray.lengthi++) {
        
_root.mcAlleBilder.createEmptyMovieClip("mcBild"+bilderArray[i], i);
        
mc _root.mcAlleBilder["mcBild"+bilderArray[i]];
        
mc._alpha 0;
        
mc.loadMovie("../bilder/"+bilderArray[i]+".jpg");
        
// mc die eigenschaft pfad geben und darin den pfad von mc speichern
        
mc.pfad mc;
        
mc.onEnterFrame = function() {
            
trace("mc:"+this.pfad);
            
gesamt this.pfad.getBytesTotal();
            
geladen this.pfad.getBytesLoaded();
            
prozent int(geladen/prozent*100);
            
trace("prozent:" +prozent);
            if (
prozent == 100) {
                
delete this.pfad.onEnterFrame();
                
trace("gelöscht");
            }
        };
    }
    
// erstes bild sichtbar machen nachdem alle geladen worden sind
    
_root.mcAlleBilder["mcBild"+bilderArray[0]]._alpha 100;
}; 
mfg,
destroy90210
destroy90210 ist offline   Mit Zitat antworten
Alt 02-08-2004, 19:56   #8 (permalink)
alien
 
Benutzerbild von Smirgel
 
Registriert seit: May 2002
Ort: Colonia
Beiträge: 7.597
tach.

soweit ich weis funzt der enterframe nicht auf dem mc in das auch das bild eingeladen wird.

schau mal hier: http://www.flashforum.de/forum/flash-mx/loadmovie-und-events-136665.html#post998209

die abfrage ob alle bilder geladen sind funzt so auch ned:
// erstes bild sichtbar machen nachdem alle geladen worden sind
_root.mcAlleBilder["mcBild"+bilderArray[0]]._alpha = 100;

du könntest aber einen zähler einbauen, der jedes mal um eins erhöt wird, wenn einer der preloader 100% erreicht hat.
dann überprüfst du diesen zähler mit der anzahl der bilder. ist beides gleich sind alle bilder geladen.

grüße.
smirgel.
__________________
bei fragen, fragen.
Smirgel ist offline   Mit Zitat antworten
Alt 02-08-2004, 21:20   #9 (permalink)
Neuer User
 
Benutzerbild von destroy90210
 
Registriert seit: Feb 2002
Ort: wien
Beiträge: 458
danke mal,

mein großes problem ist, dass ich leider nicht die kb des mcs bekomme wo mein bild drinnen ist egal was ich mache er spuckt immer 0 aus wenn ich getBytesTotal() trace...

die bilder ladet er eh super wenn ich im player oben bei banwidth profiler schaue
nur kriege ich es nicht hin das er, mir die kb jedes einzelnen mcs ausspuckt wo jeweils ein bild genau drinnen ist;(

und ich habe da schon echt viel geschaut aber irgendwie checke ich das ned das ich das so hinbekomme...

hat schon wer vielleicht ne lösung dafür ?

mfg,
destroy90210
destroy90210 ist offline   Mit Zitat antworten
Alt 02-08-2004, 21:29   #10 (permalink)
Neuer User
 
Registriert seit: Sep 2001
Beiträge: 197
Versuche mal, das Laden online zu testen.
Das Problem mit getBytes.... ist, dass dir nichts angezeigt wird sobald
sich die zu ladende Datei auf der Festplatte befindet! D.h. du mußt
die Datei irgendwie über´s Internet versuchen zu laden und vorher auf deiner
Festplatte löschen.
Dein Code lädt die Datei deshalb sofort und kommt garnicht erst zum Hochzählen weil ja die Datei schon auf der Festplatte liegt und nicht herunter
gezogen wird.
flashcowboy ist offline   Mit Zitat antworten
Alt 02-08-2004, 21:37   #11 (permalink)
Neuer User
 
Benutzerbild von destroy90210
 
Registriert seit: Feb 2002
Ort: wien
Beiträge: 458
das laden von datein kann man ja im föashplayer simulieren unter
symulate download und bei settings kannst die kbs einstellen wie schnell er laden soll
#

mfg,
destroy90210
destroy90210 ist offline   Mit Zitat antworten
Alt 02-08-2004, 21:50   #12 (permalink)
alien
 
Benutzerbild von Smirgel
 
Registriert seit: May 2002
Ort: Colonia
Beiträge: 7.597
achja, ein leeres mc hat eine größe von 4 byte. daher sollte mn dieses auch besser überprüfen.

also als beispiel:

ActionScript:
  1. this.createEmptyMovieClip("bildmc",1);
  2. bildmc.createEmptyMovieClip("bildcontainer",1)
  3. bildmc.bildcontainer.loadMovie("bild.jpg");
  4. bildmc.onEnterFrame=function(){
  5.   prozent=Math.round(this.bildcontainer.getBytesLoaded()/this.bildcontainer.getBytesTotal()*100);
  6.   trace(prozent)
  7.   if(prozent==100 && this.bildcontainer.getBytesLoaded()>4){
  8.     trace("geladen");
  9.     delete this.onEnterFrame;
  10.   }
  11. }
__________________
bei fragen, fragen.
Smirgel ist offline   Mit Zitat antworten
Alt 03-08-2004, 07:43   #13 (permalink)
Neuer User
 
Benutzerbild von destroy90210
 
Registriert seit: Feb 2002
Ort: wien
Beiträge: 458
ok thx smirgel jetzt geht es

PHP-Code:
loadPictures = function (bilderArray) {
    
_root.createEmptyMovieClip("mcAlleBilder"100);
    for (var 
0i<bilderArray.lengthi++) {
        
_root.mcAlleBilder.createEmptyMovieClip("mcBild"+bilderArray[i], i);
        
_root.mcAlleBilder["mcBild"+bilderArray[i]].createEmptyMovieClip("bildContainer"1);
        
_root.mcAlleBilder["mcBild"+bilderArray[i]].bildContainer.loadMovie("../bilder/"+bilderArray[i]+".jpg");
        
_root.mcAlleBilder["mcBild"+bilderArray[i]].onEnterFrame = function() {
            
prozent Math.round(this.bildContainer.getBytesLoaded()/this.bildContainer.getBytesTotal()*100);
            
trace(prozent);
            if (
prozent == 100 && this.bildContainer.getBytesLoaded()>4) {
                
trace("geladen");
                
delete this.onEnterFrame;
            }
        };
    }
}; 
also war das problem das ich nicht noch nen mc gebaut habe der bildContainer geheissen hat oder ? mit dem onEnterFrame in kombination, aber warum ist das so warum kann ich nicht in dem MC wo ich das on EnterFrame ausführe auch noch die kb abfragen ?? hat das nen bestimmten grund ?

mfg,
destro90210
destroy90210 ist offline   Mit Zitat antworten
Alt 03-08-2004, 10:06   #14 (permalink)
querdenker
 
Benutzerbild von kelor
 
Registriert seit: Jun 2001
Ort: formel1-stadt hockenheim
Beiträge: 4.731
ja...nen grund hat es,...
aber es ist nicht wahr, dass man nicht in einem mc, der etwas lädt, irgend etwas anderes abfragen könnte...oder ausführen könnte...
man muss nur eben warten und darf nicht gleich drauf los rennen...

greetz

kelor
kelor 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 17:32 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele