Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 20-09-2004, 21:07   #1 (permalink)
Neuer User
 
Registriert seit: Mar 2004
Beiträge: 216
Dynamic Text

hi, hab eine kleine frage.

möchte zu meinem preloader eine numerische prozentangabe haben.
habe der logikhalber folgende as mit einem dynamischen text mit Preloader_txt als instance name verwendet.
funkt natürlich nicht.
was ist falsch?

this.onEnterFrame = function() {
total = _root.getBytesTotal();
loaded = _root.getBytesLoaded();
prozent = int((loaded / total) * 100);
if (prozent == 100) {
_root.nextFrame();
}
};
Preloader_txt.text = loaded ;


vielen dank im vorraus

ihr seid super :-) (einschleim)
Vic Vega ist offline   Mit Zitat antworten
Alt 20-09-2004, 21:12   #2 (permalink)
alien
 
Benutzerbild von Smirgel
 
Registriert seit: May 2002
Ort: Colonia
Beiträge: 7.597
hi.

die übergabe an das textfeld muss mit in den onEnterFrame, sonst wird die anzeige nicht aktualisiert. außerdem würde ich die prozente übergeben, nicht die geladenen bytes.

ActionScript:
  1. this.onEnterFrame = function() {
  2.   total = _root.getBytesTotal();
  3.   loaded = _root.getBytesLoaded();
  4.   prozent = int((loaded / total) * 100);
  5.   _root.Preloader_txt.text = prozent+"%" ;
  6.   if (prozent == 100) {
  7.     _root.nextFrame();
  8.   }
  9. };

grüße.
smirgel.
__________________
bei fragen, fragen.
Smirgel ist offline   Mit Zitat antworten
Alt 20-09-2004, 21:13   #3 (permalink)
muh
 
Benutzerbild von Janoscharlipp
 
Registriert seit: Apr 2002
Ort: Freiburg / Stuttgart
Beiträge: 4.338
probiers mal hiermit:

ActionScript:
  1. stop();
  2. this.onEnterFrame = function() {
  3. total = _root.getBytesTotal();
  4. loaded = _root.getBytesLoaded();
  5. prozent = int((loaded / total) * 100);
  6. if ((prozent == 100) && (loaded > 8)) {
  7. _root.nextFrame();
  8. }
  9. Preloader_txt.text = loaded ;
  10. };

EDIT:
da war wohl einer schneller.
Aber den zusatz im if loaded > 8 solltest du noch hinzufügen, da total am Anfang 0 ist, also loaded = total, also prozent = 100...

Geändert von Janoscharlipp (20-09-2004 um 21:17 Uhr)
Janoscharlipp ist offline   Mit Zitat antworten
Alt 20-09-2004, 21:21   #4 (permalink)
Neuer User
 
Registriert seit: Mar 2004
Beiträge: 216
vielen dank. funzt noch immer nicht aber das krieg ich schon noch raus. nur noch eine kurze frage.

wo tu ich das dynamische textfeld hin?
in die hauptzeitleiste oder in den untergeordneten mc wo ich das as eingebe?
Vic Vega ist offline   Mit Zitat antworten
Alt 20-09-2004, 21:39   #5 (permalink)
alien
 
Benutzerbild von Smirgel
 
Registriert seit: May 2002
Ort: Colonia
Beiträge: 7.597
hier ein kleines tutorial über die steuerung zwischen mc´s und z.b. der hauptzeitleiste (bühne):
Steuerung zwischen Hauptzeitleiste (auch Szenen), Movieclips und Stufen

steht z.b. vor dem Preloader_txt ein _root, muss es in der hauptzeitleiste liegen.
__________________
bei fragen, fragen.

Geändert von Smirgel (20-09-2004 um 21:40 Uhr)
Smirgel ist offline   Mit Zitat antworten
Alt 20-09-2004, 21:44   #6 (permalink)
Neuer User
 
Registriert seit: Mar 2004
Beiträge: 216
ja danke. weis ich
hab jetzt halt folgendes as mit textfeld im gleichen mc und funkt noch immer nicht.

this.onEnterFrame = function() {
total = _root.getBytesTotal();
loaded = _root.getBytesLoaded();
prozent = int((loaded / total) * 100);
Preloader_txt.text = prozent+"%";
if (prozent == 100) {
_root.nextFrame();
}
};

hab gedacht das textfeld müsste vielleicht im root liegen, geht aber auch nicht.
Vic Vega ist offline   Mit Zitat antworten
Alt 20-09-2004, 21:45   #7 (permalink)
alien
 
Benutzerbild von Smirgel
 
Registriert seit: May 2002
Ort: Colonia
Beiträge: 7.597
wenn es in _root liegt, dann schreib halt auch _root davor

_root.Preloader_txt.text = prozent+"%";
__________________
bei fragen, fragen.
Smirgel ist offline   Mit Zitat antworten
Alt 20-09-2004, 21:49   #8 (permalink)
Neuer User
 
Registriert seit: Mar 2004
Beiträge: 216
ich idiot..

funktioniert einwandfrei. vielen dank. hab vergessen den dl zu simulieren.
Vic Vega ist offline   Mit Zitat antworten
Alt 20-09-2004, 21:49   #9 (permalink)
alien
 
Benutzerbild von Smirgel
 
Registriert seit: May 2002
Ort: Colonia
Beiträge: 7.597
kannst aber auch mal generell überprüfen ob die werte im script ankommen:
achja, und den onEnterframe auch wieder löschen, wenn 100% erreicht sind
ActionScript:
  1. this.onEnterFrame = function() {
  2. total = _root.getBytesTotal();
  3. loaded = _root.getBytesLoaded();
  4. prozent = int((loaded / total) * 100);
  5. Preloader_txt.text = prozent+"%";
  6. if (prozent == 100) {
  7. delete this.onEnterFrame;
  8. _root.nextFrame();
  9. }
  10. trace("total: "+total+"  -  geladen: "+loaded+"  -  prozent: "+prozent)
  11. }

sag mal was dabei im ausgabefenster steht.

Edit: okay , aber lösch trotzdem den onEnterFrame, sonst rächt sich das noch
__________________
bei fragen, fragen.
Smirgel ist offline   Mit Zitat antworten
Alt 21-09-2004, 00:33   #10 (permalink)
Neuer User
 
Registriert seit: Mar 2004
Beiträge: 216
mach ich morgen. sag dir was rauskommt..

..wieso onEnterFrame löschen?
ich werde da nicht mehr draufkommen und selbst wenn. die 100%werden ja schon geladen sein..
..welche konflikte könnten dennoch auftreten?
Vic Vega ist offline   Mit Zitat antworten
Alt 21-09-2004, 00:38   #11 (permalink)
alien
 
Benutzerbild von Smirgel
 
Registriert seit: May 2002
Ort: Colonia
Beiträge: 7.597
der onEnterFrame läuft solange die zeitleiste, in der er aufgerufen ist, noch am start ist. also z.b. auf _root würde er deinen ganzen film lang laufen und jedes mal _root.nextFrame ausführen.
__________________
bei fragen, fragen.

Geändert von Smirgel (21-09-2004 um 00:39 Uhr)
Smirgel 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:00 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele