Autor |
Nachricht |
alesch
Threadersteller
Dabei seit: 14.08.2003
Ort: Bremen
Alter: 39
Geschlecht:
|
Verfasst Mi 01.02.2006 18:45
Titel [Flash MX 2004] Menüerstellung macht mich verrückt |
|
|
Ahhh ich dreh durch. Sitze schon seid geschlagenen6 Stunden an dem Scheiss und komm nicht weiter. Dazu spinnt mein Internet auch noch, so dass ich mir auch kaum Hilfe daher holen kann. Aber jetzt...
Also ich baue eine Navigation die aus einem Array erstellt werden soll. Diese soll unendlich viele Ebenen haben können. Als erstes Problem stecke ich bei dem Erstellen des Arrays fest. Wie wird das in Flash gemacht? Hab's jetzt ma so gemacht:
Code: | var menu = new Array()
menu[0] = "Home";
menu[1] = "Leistungen";
menu[1][0] = "Unterpunkt 1";
menu[1][1] = "Unterpunkt 2";
menu[1][2] = "Unterpunkt 3";
menu[2] = "Customizing";
menu[3] = "Treffen";
menu[4] = "Touren";
menu[5] = "Trainings";
menu[6] = "Bike des Monats";
menu[7] = "Bikerider-Shop";
menu[8] = "Vermietungen";
menu[9] = "Umbau-Tipps";
menu[10] = "Kontakt";
menu[11] = "Impressum"; |
Jetzt würde ich mir in PHP ein Funktion basteln, die sich durch das Array arbeitet und sich, wenn Unterpunkte vorhanden sind, selber aufruft. In Flash allerdings scheitere ich irgendwie, irgendwo.
Hier die Funktion
Code: | function machDasMenu(Items)
{
for (i=0;i<Items.length;i++)
{
createButton("button_"+i,i,Items[i]);
if(Items[i].length > 0)
{
machDasMenu(Items[i]);
}
}
}
function createButton(buttonID, i, labelText)
{
// Button erstellen
var obj = new Object();
obj._x = 0;
obj._y = 20 * i;
obj.onRollOver=function(){this.button_bg.colorTo(0x993233,0,"linear");}
obj.onRollOut=function(){this.button_bg.colorTo(0x990100,1.5,"easeOutExpo");}
obj.onPress=function(){
this.sel.colorTo(0x993233,1.5,"easeOutExpo");
_root.menuPos[_root.selItem].sel.colorTo(0x990100,1.5,"easeOutExpo");
_root.selItem = buttonID;
}
_root.menuPos.attachMovie("button", buttonID, i, obj);
var temp=eval("_root.menuPos." + buttonID);
temp.label = labelText;
} |
Hmm. Ich häng hier ma die fla dran. Wird sonst zu kompliziert
Die fla
Danke schonmal!!!
|
|
|
|
|
Account gelöscht
Ort: -
Alter: -
|
Verfasst Mi 01.02.2006 19:25
Titel
|
|
|
Der Fehler is hier irgendwo:
_root.menuPos.attachMovie("button", buttonID, i, obj);
Ich hab leider kein Handbuch zur parat, aber das kann nicht stimmen... du durchwanderst den Baum ja korrekt bis dahin.
Kann leider kein flash, sonst würd ich dir auch sagen wies richtig lautet;)
|
|
|
|
|
Anzeige
|
|
|
alesch
Threadersteller
Dabei seit: 14.08.2003
Ort: Bremen
Alter: 39
Geschlecht:
|
Verfasst Mi 01.02.2006 19:28
Titel
|
|
|
Das ist wahrscheinlich auch mein Problem. In PHP würde das so in der Art funktionieren. In Flash wohl nicht. Jetzt muss mir nur noch einer sagen warum
|
|
|
|
|
flashguerilla
Dabei seit: 31.01.2006
Ort: -
Alter: -
Geschlecht:
|
Verfasst Mi 01.02.2006 19:59
Titel
|
|
|
Zu 1:
Code: |
deinArray = new Array(length);
|
oder
Code: |
deinArray = new Array(element0, ..., elementN);
|
Hinzufügen von Elementen:
Code: |
deinArray.push(wert1, ..., wertN);
|
Multiarray:
Code: |
var multi_array = ["Element1", ["Element21", "Element22"]];
|
Ansonsten: F1 --> ActionScript 2.0-Referenzhandbuch --> ActionScript-Klassen --> Array
|
|
|
|
|
alesch
Threadersteller
Dabei seit: 14.08.2003
Ort: Bremen
Alter: 39
Geschlecht:
|
Verfasst Mi 01.02.2006 20:14
Titel
|
|
|
Danke erstmal für die Antworten. Hab da aber noch ein kleiner Verständnis Problem.
Wenn ich mir so einen Array erstelle,
Code: | var meinArray = ["Wert1",["Wert2","Wert3"],"Wert4"]; |
dann habe ich doch folgende Werte im Array gesetzt:
Code: | meinArray[0] = Wert1;
meinArray[1] = "";
meinArray[1][0] = "Wert2";
meinArray[1][1] = "Wert3";
meinArray[2] = "Wert4"; |
DAs sehe ich doch richtig, oder? Wenn das so sein sollte, dann ist meine Frage: Wie kriege ich nen Wert in meinArray[1]?
Gibt es denn nich ne einfachere Lösung für dieses Problem? Z.B. auf Arrays verzichten?
Zuletzt bearbeitet von alesch am Mi 01.02.2006 20:17, insgesamt 1-mal bearbeitet
|
|
|
|
|
riechsalz
Account gelöscht
Ort: -
|
Verfasst Do 02.02.2006 12:03
Titel
|
|
|
-
Zuletzt bearbeitet von am Do 02.02.2006 12:05, insgesamt 1-mal bearbeitet
|
|
|
|
|
alesch
Threadersteller
Dabei seit: 14.08.2003
Ort: Bremen
Alter: 39
Geschlecht:
|
Verfasst Do 02.02.2006 13:20
Titel
|
|
|
Ja, soweit hab ich das. Ist es also nich so wie in PHP, wo die Werteverteilung so aussehen kann:
Code: | array[0] = "iuiug";
array[1] = "oifreho";
array[1][0] = "oheoh";
array[1][1] = "fweoifh";
array[2] = "feroh"; |
array[1] enthält also nicht den Datentyp Array, sondern einen eigenen Wert. Sowas bräuchte ich dann in Flash.
|
|
|
|
|
riechsalz
Account gelöscht
Ort: -
|
Verfasst Fr 03.02.2006 11:20
Titel
|
|
|
-
|
|
|
|
|
|
|
|
Ähnliche Themen |
Flash MX / Flash MX Professional 2004
Drucken mit Flash MX 2004
MenuBar in Flash MX 2004
xml mit Flash MX 2004 möglich?
Flash MX 2004 - GetURL - NewWindow
aktionen- flash mx professionel 2004
|
|