Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 14-03-2004, 19:44   #1 (permalink)
::: codeslinger :::
 
Benutzerbild von L4M4R
 
Registriert seit: Apr 2003
Ort: schweiz
Beiträge: 725
Kapitulation vor Sound.onLoad

selbst nach dem durchlesen von mehreren Threads und einem rumgebastel von über 3 Stunden will und will es nicht gehen.
ActionScript:
  1. var sounds = new Object();
  2. sounds['test'] = new Sound(this);
  3. sounds['test'].onLoad = function(x:Boolean){
  4. if(x){
  5. trace("loaded");
  6. }else{
  7. trace(this.getBytesLoaded() + " Bytes von " + this.getBytesTotal() + " geladen");
  8. }
  9. }
  10. sounds['test'].loadSound("test.mp3",false);
und das ist nur eine Methode die ich probiert hab, das Problem ist nicht das loaded nicht getracet würde, aber bei den getBytes gibt er mir nix aus, wenn ich das online stell dann steht bis zum fertigen laden des Sounds einfach immer nur 0 als getBytesLoaded. Hab das schon über andere Methoden probiert und überall das gleiche, selbst mit der Abfrage
ActionScript:
  1. sounds['test'].duration > 0
ging nichts
__________________
Am Anfang schuf Gott das Advanced Research Projects Agent Network, dass auf den Namen ARPAnet getauft wurde, und das ARPAnet wuchs und gedieh und zeugte das Milnet, und das ARPAnet und das Milnet zeugten das Internet, und das Internet und seine Nachkommen, USENET Newsgroups und das World Wide Web, wurden zu einer Dreifaltigkeit, die das Leben seines Volkes für alle Zeiten grundlegend veränderte. L4M4R
L4M4R ist offline   Mit Zitat antworten
Alt 14-03-2004, 22:26   #2 (permalink)
Neuer User
 
Registriert seit: Mar 2002
Ort: D'dorf
Beiträge: 765
hi,

kein Wunder dass es nicht funktioniert. "onLoad" wird genau einmal aufgerufen. Und zwar wenn der Sound erfolgreich geladen wurde, oder wenn der Sound nicht geladen werden konnte.

Um den Ladezustand des Sounds abzufragen musst du dir mit einem onEnterFrame oder einem Interval behelfen.

Ich habe deinem Beispiel zwei Funktionen im sounds-Objekt zugefügt. "startLoad" beginnt mit dem Lade-Vorgang und startet ein Interval, das die Funktion "checkLoadingStatus" aufruft. In der wird der Ladefortschritt geprüft:
ActionScript:
  1. var sounds = new Object();
  2. sounds.startLoad = function(file, stream, obj){
  3.     // Params:
  4.     // file: pfad/name des mp3 files [String]
  5.     // stream: streaming true/false [Boolean]
  6.     // obj: Sound-Objekt in sounds, in das geladen werden soll [String]
  7.     this.loadIntID = setInterval(this, "checkLoadingStatus", 50, obj);
  8.     this[obj].loadSound(file, stream);
  9. }
  10. sounds.checkLoadingStatus = function(obj){
  11.     var bl = this[obj].getBytesLoaded();
  12.     var bt = this[obj].getBytesTotal();
  13.     trace(bl+" Bytes von "+bt+" geladen");
  14.     if(bl >= bt) clearInterval(this.loadIntID);
  15. }
  16. sounds.test = new Sound(this);
  17. sounds.test.onLoad = function(x) {
  18.     if (x) {
  19.         trace("loaded");
  20.         this.start();
  21.     } else {
  22.         trace("Fehler beim Laden des Sounds");
  23.     }
  24. };
  25. sounds.startLoad("test.mp3", false, "test");
Wenn's noch Fragen gibt, fragen.

gruß,
roman
romän ist offline   Mit Zitat antworten
Alt 15-03-2004, 11:04   #3 (permalink)
::: codeslinger :::
 
Benutzerbild von L4M4R
 
Registriert seit: Apr 2003
Ort: schweiz
Beiträge: 725
jo ist ein Ansatz, hab jetzt einfach die Soundclass um onLoading erweitert nach etwa der gleichen Methode geht nun also ganz easy
__________________
Am Anfang schuf Gott das Advanced Research Projects Agent Network, dass auf den Namen ARPAnet getauft wurde, und das ARPAnet wuchs und gedieh und zeugte das Milnet, und das ARPAnet und das Milnet zeugten das Internet, und das Internet und seine Nachkommen, USENET Newsgroups und das World Wide Web, wurden zu einer Dreifaltigkeit, die das Leben seines Volkes für alle Zeiten grundlegend veränderte. L4M4R
L4M4R 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:48 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele