| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Oct 2003
Beiträge: 116
| Array Problem. Kann verschachtelte Buttons nicht erreichen
Hallo zusammen, ich habe hier schon im Forum geschaut und leider zum Thema nichts gefunden. Auch in der Flash MX-Hilfe steht eigentlich das, was ich selbst so probiert habe (Jedenfalls die Verknüpfung zwischen Arrayellementzähler und einem String). Ich benötige folgende Arraystruktur für jedes Element. Diese Liste wird mit der Zeit anwachsen (statisch). buttonArray = new Array( ); buttonArray[0] = _root.mc_bilder.mc_1.btn_1; buttonArray[1] = _root.mc_bilder.mc_2.btn_2; buttonArray[2] = _root.mc_bilder.mc_3.btn_3; buttonArray[3] = _root.mc_bilder.mc_4.btn_4; buttonArray[4] = _root.mc_bilder.mc_5.btn_5; .... .... Diese Konstruktion schreit ja förmlich nach einer Optimierung , deshalb war mein Versuch so...buttonArray = new Array( ); buttonArray.length =5; for(var i=1; i < buttonArray.length; i++) { buttonArray[i-1] = _root.mc_bilder.["mc_"+i].["btn_"+i]; } somit wäre ich flexibel und könnte die Länge und Anzahl der Arrays bei buttonArray.length steuern. Aber leider geht es nicht. Fehlermeldung... Symbol=mc_buttons, Ebene=buttonArray, Bild=1: Zeile 8: Nach '.'-Operator wurde ein Feld erwartet. buttonArray[i-1] = _root.mc_bilder.["mc_"+i].["btn_"+i]; .... Wäre super, wenn mir jemand die Lösung hätte. Ich arbeite mit Flash MX. Besten Dank im Voraus! DJ Trancelight Geändert von trancelight (07-06-2006 um 10:52 Uhr) |
| | |
| | #2 (permalink) |
| mod_rewrite Registriert seit: Feb 2003 Ort: München
Beiträge: 15.621
|
Vor ner eckigen Klammer darf kein Punkt stehen.
__________________ RTFM Wie man Fragen richtig stellt. Achim Bindannmalweg Money makes the world go round, fear makes it turn much faster. (New Model Army) |
| | |
| | #3 (permalink) |
| habs vergessen Registriert seit: Feb 2006
Beiträge: 990
| Code:
index01 = new array("1","2","3");
content01 = new array("_root.mc_bilder.mc_1.btn_1","_root.mc_bilder.mc_2.btn_2","_root.mc_bilder.mc_3.btn_3");
output = new array();
for (var i=0; i < index.length; i++) {
output[index01[i]] = content01[i];
}
trace(output["1"]+output["2"]+output["3"]); |
| | |
| | #4 (permalink) |
| Neuer User Registriert seit: Oct 2003
Beiträge: 116
|
@sonar und pwd Dankeschön für eure schnellen Antworten. Also so wie ich das gemacht habe geht es nicht? Keine Chance das syntaxtechnisch zu bewältigen? Die Lösung von pwd ist recht gut, aber erfordert mehr Pflege (2 Arrays) beim Einfügen eines neuen Elements. Hat jemand noch eine Idee? Besten Dank für eure Hilfe bye |
| | |
| | #5 (permalink) |
| ................ Registriert seit: Jun 2004
Beiträge: 15.890
|
Tag! Was genau möchtest du denn? Sowas hier: PHP-Code:
__________________ ternärer Konditionaloperator +++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++ |
| | |
| | #6 (permalink) |
| Neuer User Registriert seit: Oct 2003
Beiträge: 116
|
Hallo "Der Frager" Du, deine Lösung sieht genial aus! Ich glaube das könnte es sein. Ich probier es heute Abend aus. Was das Ganze soll: Ich erstell Buttons, die in einem MC untergebracht sind. Das Ganze soll eine Slideshow später mal werden und die Buttons werden dann mit einem Foto hinterlegt. Diese Buttons werden mit Hilfe einer Funktion unsichtbar gemacht wobei einer von den Buttons immer sichtbar sein soll. Das ändert sich jedoch immer, so dass ich den Button direkt über AS ansprechen muss. buttonArray[0]._visible = true; //buttonArray[0] zeigt auf _root.mc_bilder.mc_1.btn_1 //buttonArray[1] zeigt auf _root.mc_bilder.mc_2.btn_2 //usw. Momentan habe ich 5 Buttons. Wenn ich nun wieder einen neuen dazubaue, dann muss ich meine Arrayliste um 1 erweitern. Jedoch muss ich dann immer diese Zeile ergänzen und die Zahlen anpassen. buttonArray[5] = _root.mc_bilder.mc_6.btn_6; usw. mc_6 (MovieClip) und btn_6 (Button) werden von mir statisch erstellt und bekommen mc_6 und btn_6 als Instanzname. Wenn das mit deiner Lösung klappt, so muss ich nur noch deine Variable "anzahl" erhöhen. Genau so, wie ich es gerne haben möchte. Wäre super! Besten Dank schon mal und ich melde mich, sobald ich es ausprobiert habe. bye Geändert von trancelight (07-06-2006 um 14:22 Uhr) |
| | |
| | #7 (permalink) |
| Neuer User Registriert seit: Jun 2004
Beiträge: 186
| @trancelight
ein Nachtrag vorab: Ups: der Frager hatte das ja schon beantwortet... nicht richtig gelesen... Nun ja, Löschen ist blöde, daher hier die ausführliche Variante von der Frager: Nachtrag 2: sehe gerade, vielleicht ist da ja doch was neues drin: Ich bringe die pusch()-Methode an dem Objekt selbst an, (oder lasse sie dort anbringen) Daher brauche ich mir noch nichteinmal über die Pfadangaben Gedanken zu machen. aus " _root.mc_bilder["mc_"+i]["btn_"+i] " wird dann einfach "this"... Wenn die Buttons verschieden reagieren sollen, schmeiße ich die Refferenzen der Buttons einfach in mehrere Arrays, die alle für bestimmte Abfragen zuständig sind... Es bleibt aber das gleiche Prinzip wie vom "Frager" ================================================== ======== Was hälst du von der Methode: (ist nicht dein Code, weil ich den aus einem anderen Beitrag von mir hier hin kopiert habe... Aber du wirst schon damit zurechtkommen) Arbeite mit Refferenzen die du in ein Array schmeißt: PHP-Code: Code: this.myButtonNr = _root.myButtons_array.length-1; PHP-Code: button verändert die farbe beim klicken. und wie bekomme ich ihn wieder normal? da stehen von mir noch mehr Komentare... Vertiefe dich ein wenig da rein, und du kannst dir viel Arbeit ersparen... Gruß Mjchael Geändert von mjchael (07-06-2006 um 15:52 Uhr) |
| | |
| | #8 (permalink) |
| Neuer User Registriert seit: Oct 2003
Beiträge: 116
|
So Leute, habs nun hinbekommen. Es läuft jetzt sogar meine Lösung, die im Prinzip sehr nahe an die Lösung vom "Der Frager" rankommt. Ich bin einfach dem Vorschlag von Sonar nachgegangen und habe bei meiner Variante die Punkte weggelassen - also so von buttonArray[i-1] = _root.mc_bilder.["mc_"+i].["btn_"+i]; zu buttonArray[i-1] = _root.mc_bilder["mc_"+i]["btn_"+i]; und es geht. @Mjchael Vielen Dank auch für deine Mühe! Ich werde mir bei Gelegenheit deine Lösung anschauen und auf meine Bedürfnisse umschreiben. Besten Dank euch allen. Ihr seit wirklich 1A bye DJ Trancelight |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |