Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 30-07-2004, 15:29   #1 (permalink)
Gabber-Freak
 
Registriert seit: Mar 2003
Ort: Sörup / Flensburg
Beiträge: 110
komprimieren eines massen-functin-aufrufes und

moin! ich habe ein paar fragen an euch zu AS2...

also... 1.
ich hab 8 buttons, but1 <-> but8
der MouseOver-text, und der film der angezeigt werden soll, wird per xml eingeladen, aber habe ich jetzt 3 mal (1. on release 2. onRollOver und 3. onRollOut) 8 zeilen mit code:

but1.onRelease = function() {anzeigen(1)};

und das ist ja nicht gerade das, was amn spannend nennt, darum wollte ich mal fragen, wie ich das mache, dass ich eine linie habe mit

but[ i < maxanzahlbuttons ].onRelease = function() {anzeigen( i )};

und das selbe mit den anderen...

ok, das war das erste...

dann zu frage nummer 2.
derzeit ist es so / wird es so sein, dass wenn ich einen button drücke, das dann per loadmovie der entsprechende film in einen leeren movieclip geladen wird, das hat aber leider den nebengeschmack, das wenn ein neuer eingeladen wird, und ich den alten nochmal ansen will, das der alte dann wieder komplett tgeladen werden muss ;(

darum dachte ich mir, ich lade einfach alle fime vor, und setze sie irgendwohin, wo man sie nicht sehen kann oder eben visible = false

aber wie gehe ich das am besten an?

so, das wars an fragen, ich hoffe, ihr gibt mir nicht nur einen code, der dann auch functioniert, sondern könnt mir auch kurz erklären, was da passiert, oder gebt mir ein paar hinweise, welche referenzen ich mir mal ansehen sollte...

so, hoffe dass ihr mein wirrwar malwieder versteh...
greetz Merlin
__________________
dies ist der anfang vom rest deines lebens
merlinvs ist offline   Mit Zitat antworten
Alt 30-07-2004, 16:19   #2 (permalink)
alien
 
Benutzerbild von Smirgel
 
Registriert seit: May 2002
Ort: Colonia
Beiträge: 7.597
problem bei buttons ist, das sie keine eigene zeitleiste haben um darin z.b. variablen zu speichern. das wäre sinnvoll um einen schleifenzähler (i) dem button zu übergeben. mit mc´s ist das aber kein problem:
ActionScript:
  1. for(i=1;i<=8;i++){
  2.   this["but"+i].wert=i;
  3.   this["but"+i].onPress=function(){
  4.     trace(this.wert+" wurde gedrückt");
  5.   }
  6.   this["but"+i].onRelease=function(){
  7.     trace(this.wert+" wurde losgelassen");
  8.   }
  9. }

zu deinen inhalten:
sagen wir du hast 5 container-mc´s in die jeweils ein inhalt geladen werden soll...
ActionScript:
  1. contents=["c1.swf","c2.swf","c3.swf","c4.swf","c5.swf"]
  2. zl=this;
  3. contentladen=function(count){
  4.   for (i=1;i<=5;i++){
  5.     zl["container"+i]._visible=0;
  6.   }
  7.   if(!zl["container"+count].geladen){
  8.     zl["container"+count].geladen=true;
  9.     zl["container"+count].loadMovie(contents[count]);
  10.   }
  11.   zl["container"+count]._visible=1
  12. }
  13. //auf nem button dann z.b. zum laden der "c1.swf"
  14. button.onRelease=function(){
  15.   contentladen(0)
  16. }
damit wir der inhalt jeweils auch nur einmal geladen.
hoffe das hilft dir erstmal weiter.


grüße.
smirgel.

p.s. scripte sind ungetestet.
__________________
bei fragen, fragen.

Geändert von Smirgel (30-07-2004 um 16:20 Uhr)
Smirgel ist offline   Mit Zitat antworten
Alt 31-07-2004, 11:56   #3 (permalink)
Gabber-Freak
 
Registriert seit: Mar 2003
Ort: Sörup / Flensburg
Beiträge: 110
hey danke smirgel!

das hilft mir doch bestimmt schonmal weiter, werde es gleich mal ausprobieren, ich habe nur eine frage, (ersteinmal zumindest)

in diesem abschnitt:
ActionScript:
  1. }
  2.   if(!zl["container"+count].geladen){
  3.     zl["container"+count].geladen=true;

steht: if(!zl["container"+co....
was genau passiert da?
ist das ! nicht ein negativer wert, also jetzt z.b. das wennd er content nicht geladen ist, soll angezeigt werden, das es geladen ist.. ?!
ach nee, das für nicht war ja != oda so?
hm, ich weis das nicht so genau, aber wird mir bestimmt jemand erklären können

ok, dann vielen dank nochmal
greetz Merlin


Edit:
ahh, ich glaub ich verstehe das jetzt, das ist so, dass dem container der wert true angehängt wird, wenn er geladen wurde oder? damit der nicht nochmal geladen wird - richtig? *s* ich glaub schon, werd das eben noch zuende testen...
der erste teil läuft aber super
__________________
dies ist der anfang vom rest deines lebens

Geändert von merlinvs (31-07-2004 um 12:58 Uhr)
merlinvs ist offline   Mit Zitat antworten
Alt 31-07-2004, 13:23   #4 (permalink)
alien
 
Benutzerbild von Smirgel
 
Registriert seit: May 2002
Ort: Colonia
Beiträge: 7.597
ja stimmt

if(!geladen){
entspricht auch: if(geladen==flase){
__________________
bei fragen, fragen.
Smirgel ist offline   Mit Zitat antworten
Alt 31-07-2004, 13:55   #5 (permalink)
Gabber-Freak
 
Registriert seit: Mar 2003
Ort: Sörup / Flensburg
Beiträge: 110
ok

der zweite teil funktioniert auch super, und ich verstehe das sogar alles

danke!
greetz Merlin
__________________
dies ist der anfang vom rest deines lebens
merlinvs 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 20:37 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele