mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Sa 20.04.2024 01:12 Benutzername: Passwort: Auto-Login

Thema: preloader prob vom 05.04.2006


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Multimedia -> preloader prob
Autor Nachricht
Kash
Threadersteller

Dabei seit: 07.11.2002
Ort: Schopfheim
Alter: 41
Geschlecht: Männlich
Verfasst Mi 05.04.2006 15:28
Titel

preloader prob

Antworten mit Zitat Zum Seitenanfang

hallo leute,

habe mal eine frage zu nem preloader.
es ist ein sehr einfacher preloader den viele kennen nehme ich an.

geladene bytes und prozentangaben des fortschritts werden angezeigt.

nun möchte ich aber das wärend dem ladevorgang sich eine kugel (was auch immer) von x nach y bewegt.
bei 0% position x, und bei 100% position y

habe 2 bilder für den Preloader
Bild 1 folgendes AS

Code:

bytes_gesamt = _root.getBytesTotal() add " Bytes gesamt";
bytes_geladen = _root.getBytesLoaded() add " Bytes geladen";
prozent = int(_root.getBytesLoaded()*100/_root.getBytesTotal()) add " Prozent";
if (prozent == "100 Prozent") {
gotoAndPlay (3);
}


und Bild 2
Code:

gotoAndPlay (1);


nun müßte ich mit einer funktion es doch so hinbekommen das ich sage meine kugel steht zu anfang bei diesen koordinaten und am ladeende bei den koordinaten.

nur leider kenne ich mich nicht mit AS aus so das ich da nicht durchsteige.

kann mir hierbei evtl jemand helfen?

danke und gruß

kash
  View user's profile Private Nachricht senden
l'Audiophile

Dabei seit: 16.09.2004
Ort: Berlin
Alter: 43
Geschlecht: Männlich
Verfasst Mi 05.04.2006 15:52
Titel

Antworten mit Zitat Zum Seitenanfang

Hab dir mal fix nen Prototype gebastelt, welcher deine Kugel von links nach rechts bewegen lässt.

Code:

MovieClip.prototype.bewegen = function (pName,pSpeed, pStartx, pStarty, pEndx) {
      _root[pName]._x = pStartx;
      _root[pName]._y = pStarty;
   _root.onEnterFrame = function() {
      for (var i = 1; i<=pSpeed; i++) {
         _root[pName]._x != (_root[pName]._x+_root[pName]._width) ? _root[pName]._x += 1 : 0;
      }
      _root[pName]._x >= pEndx ? delete this.onEnterFrame : 0;
   };
};
bewegen("kugel_mc"/*deine Movieclip-Instanz - in diesem Falle "kugel_mc"*/, 1/*Geschwindigkeit*/, 0/*Startkoordinate X-Achse*/, 0/*Startkoordinate Y-Achse*/, 400 /*Endkoordinate der X-Achsenbewegung */);


Gruß PJ Lächel


Zuletzt bearbeitet von l'Audiophile am Mi 05.04.2006 15:52, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
Kash
Threadersteller

Dabei seit: 07.11.2002
Ort: Schopfheim
Alter: 41
Geschlecht: Männlich
Verfasst Mi 05.04.2006 16:08
Titel

Antworten mit Zitat Zum Seitenanfang

danke pj für die schnelle antwort.

kann das erst ein wenig später testen da ich gleich in einer besprechung hock.
ist aber auf den preloader aufgebaut den ich gepostet hatte nehme ich an.
  View user's profile Private Nachricht senden
l'Audiophile

Dabei seit: 16.09.2004
Ort: Berlin
Alter: 43
Geschlecht: Männlich
Verfasst Mi 05.04.2006 16:24
Titel

Antworten mit Zitat Zum Seitenanfang

Kash hat geschrieben:

ist aber auf den preloader aufgebaut den ich gepostet hatte nehme ich an.


Nö, nen bischen Arbeit musste dir schon selbst machen. *bäh*

Tip: ändere mal den Stringverketter "add" in "+" um. Dann hast du später auch keine Porobleme mit Flashversionen >5. *zwinker*
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
labrar

Dabei seit: 04.04.2006
Ort: -
Alter: 49
Geschlecht: Männlich
Verfasst Mi 05.04.2006 16:58
Titel

Antworten mit Zitat Zum Seitenanfang

Mach aus deiner Kugel einen mc(wenn nicht schon passiert) vergib den instanznamen "kugel" und plazier sie wo sie beginnen soll.

und dann so(ungetestet müsste aber gehen

Code:

range=2;//deine x Kordinate.Kannst anpassen.Bei 2 läuft deine Kugel 200 Pixel weit.Also immer mal 100
this.onEnterFrame = function() {
   bln = getBytesLoaded();
   blv = getBytesTotal();
   prozent = Math.round(bln/blv*100);
   kugel._x=prozent*range;// jetzt läuft sie step by step nach rechts.
   if (prozent>=100) {
      delete this.onEnterFrame;
      play();
   }
};




Bei meinem Beispiel kannst dir das zweite Bild sparen. Läuft alles auf einem Frame.Auf das zweite Bild kannst dann deine eigentliche Seite draufpacken


Zuletzt bearbeitet von labrar am Mi 05.04.2006 17:01, insgesamt 4-mal bearbeitet
  View user's profile Private Nachricht senden
Kash
Threadersteller

Dabei seit: 07.11.2002
Ort: Schopfheim
Alter: 41
Geschlecht: Männlich
Verfasst Mi 05.04.2006 17:10
Titel

Antworten mit Zitat Zum Seitenanfang

ich würde es gern selbst machen pj, keine frage, bin ungern auf hilfe anderer angewiesen.
nur sind mein flashkenntnisse gleich null.

bin asp'ler und kann nicht viel mit as und den ansprechen von mc's anfangen.

@labrar: dank auch dir für die antwort, werde es ausprobieren.
denn pj, mit deiner lösung komme ich ehrlich gesagt nciht klar.


Zuletzt bearbeitet von Kash am Mi 05.04.2006 17:11, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
labrar

Dabei seit: 04.04.2006
Ort: -
Alter: 49
Geschlecht: Männlich
Verfasst Do 06.04.2006 01:05
Titel

Antworten mit Zitat Zum Seitenanfang

Denke das du damit klar kommen müsstest da das AS 1. Schulstunde ist.
Ich kommentier nochmal jede Zeile das du weißt was die jeweilige macht

Code:

range=2;//deine x Kordinate.Kannst anpassen.Bei 2 läuft deine Kugel 200 Pixel weit.Also immer mal 100. Is klar ne?
this.onEnterFrame = function() {// Heißt soviel wie reite auf dem Frame rum bis der delete kommt. Oder anderst. Eine Schleife
   bln = getBytesLoaded();//bln ist ein Fantasie name. Kannst auch Oma oder sowas schreiben. Ist nur die Variable die den Wert der bisher geladenen Menge als Zahl abspeichert.
   blv = getBytesTotal();//blv ist wieder nur eine Variable die den Wert der vermuteten übrigen Zahl der Gesamtmenge an bytes speichert.
   prozent = Math.round(bln/blv*100);//prozent ist die Variable die dann eben die oberen Werte als ..ja Prozent ausgibt. Wenn du dir die Zeile anschaust siehst du das das eine ganz simple Mathematische funktion ist ala drei Satz.
   kugel._x=prozent*range;// wenn der Prozentwert steigt, steigt auch der Wert deiner Kugel x Position *2
   if (prozent>=100) {//wenn 100% erreicht
      delete this.onEnterFrame;//verlasse die Schleife(sinnbildlich)
      play();//und spiele ab. Sprich hüpf zum nächsten Frame
   }
};

ach so.

vieleicht bindest du noch vor dem ganzen code noch ein

stop();

ein.

Also so:

stop();

range=2;
this.onEnterFrame = function() {
   bln = getBytesLoaded();
   blv = getBytesTotal();
   prozent = Math.round(bln/blv*100);
   kugel._x=prozent*range;
   if (prozent>=100) {
      delete this.onEnterFrame;
      play();
   }
};
  View user's profile Private Nachricht senden
Kash
Threadersteller

Dabei seit: 07.11.2002
Ort: Schopfheim
Alter: 41
Geschlecht: Männlich
Verfasst Do 06.04.2006 11:03
Titel

Antworten mit Zitat Zum Seitenanfang

so ein danke an alle, es funktioniert.

allerdings erst nachdem ich der X-Koordinate einen startwert gegeben habe und deine rechnug labrar erweitert habe.

code schaut jetzt so aus.

Code:

xstart=625; //AUSSCHLAGGEBEND
range=2.5;
this.onEnterFrame = function() {
   bln = getBytesLoaded();
   blv = getBytesTotal();
   prozent = Math.round(bln/blv*100);
   
   erg = int(getBytesLoaded()*100/getBytesTotal()) add " Prozent"; // HIER HABE ICH DIE AUSGABE MEINER PROZENTANGABE GEMACHT
   
   mc_bewegung._x=xstart+(prozent*range); //UND HIER DIE RECHNUNG ERWEITERT
   if (prozent>=100) {
      delete this.onEnterFrame;
      gotoAndPlay(3);
   }
};
stop();



aber ohne eure vorarbeit hätte es nicht funktioniert.

danke war diesmal wirklich super.
  View user's profile Private Nachricht senden
 
Ähnliche Themen prob mit png im IE
Div-Prob
new Color Prob
td Anordnungs - Prob
CSS-Prob mit emailformular...
css positionierungs prob
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Multimedia


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.