Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 02-08-2004, 09:41   #1 (permalink)
ActionStripper
 
Benutzerbild von Mr.Twister
 
Registriert seit: Nov 2001
Ort: Oldenburg
Beiträge: 3.275
variable in einen pfad integrieren ...?

hi,

ich habe in einem "mc" einen "mc1" und einen "mc2" liegen.

folgendes klappt natürlich:
trace(mc.mc1._x);
da kommt natürlich der x-wert des mc1 raus, der im mc steckt.

mal angenommen, ich erstelle mir eine neue variable:
zielmc = eingabetext // und im eingabetext steht "mc2".
also ist meine variable zielmc nun "mc2".

wie kann ich jetzt sagen:
trace(mc.zielmc._x) ??

thx 4 tips!
__________________
Design ist AUCH Geschmackssache.
Mr.Twister ist offline   Mit Zitat antworten
Alt 02-08-2004, 09:48   #2 (permalink)
Flashaholic
 
Benutzerbild von atothek
 
Registriert seit: Feb 2003
Ort: Berlin
Beiträge: 1.459
ganz einfach

PHP-Code:
var mc[zielmc]._x
__________________
TVNEXT Solutions
atothek ist offline   Mit Zitat antworten
Alt 02-08-2004, 09:56   #3 (permalink)
ActionStripper
 
Benutzerbild von Mr.Twister
 
Registriert seit: Nov 2001
Ort: Oldenburg
Beiträge: 3.275
HA !!

jo, achsooo - ich verstehe jetzt auch endlich mal, was diese eckigen klammern manchmal in den pfaden zu bedeuten haben, obwohl es kein array gibt.

wunderbar, vielen dank!
__________________
Design ist AUCH Geschmackssache.
Mr.Twister ist offline   Mit Zitat antworten
Alt 02-08-2004, 10:04   #4 (permalink)
querdenker
 
Benutzerbild von kelor
 
Registriert seit: Jun 2001
Ort: formel1-stadt hockenheim
Beiträge: 4.731
hi mr.t

sorry, wenn ich heute giftig klinge...aber leutz...nutzt doch mal endlich die flashhilfe, die integrierte...arggghh...F1...oder einfach den hilfe-button im as-fenster klicken...grrr


zitat:?

Zitat:
[](Arrayzugriff)
Verfügbarkeit
Flash Player 4.

Verwendung
mein_array = ["a0", a1,...aN]
meinMehrdimensionales_array = [["a0",...aN],...["a0",...aN]]
mein_array[E] = wert
meinMehrdimensionales_array[E][E] = wert
objekt["wert"]

Parameter
mein_array Der Name eines Arrays.

a0, a1,...aN Elemente in einem Array.

meinMehrdimensionales_array Der Name eines simulierten mehrdimensionalen Arrays.

E Die Nummer (bzw. der Index) eines Elements in einem Array.

objekt Der Name eines Objekts.

wert Ein String oder Ausdruck, der als String ausgewertet wird und eine Eigenschaft des Objekts bezeichnet.

Rückgaben
Keine.

Beschreibung
Operator; initialisiert ein neues Array oder ein neues multidimensionales Array mit den angegebenen Elementen (a0 usw.) bzw. greift auf Elemente in einem Array zu. Mit dem Array-Zugriffsoperator können Namen von Instanzen, Variablen und Objekten dynamisch gesetzt und abgerufen werden. Sie können den Operator auch zum Zugriff auf Objekteigenschaften verwenden.

Verwendung 1: Ein Array ist ein Objekt, dessen Eigenschaften (Elemente) durch eine Zahl (den so genannten Index) angegeben werden. Beim Erstellen eines Arrays umgeben Sie die Elemente mit Array-Zugriffsoperatoren (eckigen Klammern). Ein Array kann verschiedene Arten von Elementen enthalten. Das folgende Array namens mitarbeiter weist beispielsweise drei Elemente auf: Das erste ist eine Zahl, und das zweite und dritte sind Strings in doppelten Anführungszeichen.

mitarbeiter = [15, "Barbara", "Erich"];

Verwendung 2: Sie können eckige Klammern ineinander verschachteln, um mehrdimensionale Arrays zu simulieren. Der folgende Code erstellt ein Array namens ticTacToe mit drei Elementen; jedes Element ist ebenfalls ein Array mit drei Elementen.

ticTacToe = [[1,2,3],[4,5,6],[7,8,9]];

// "Debuggen" > "Variablen auflisten" im Filmtestmodus wählen
// um eine Liste der Array-Elemente zu sehen

Verwendung 3: Sie können den Index eines jeden Elements mit eckigen Klammern umgeben, damit Sie direkt darauf zugreifen können. Auf diese Weise können Sie ein neues Element zu einem Array hinzufügen oder den Wert eines vorhandenen Elements ändern oder abrufen. Das erste Element in einem Array ist immer 0:

mein_array[0] = 15;
mein_array[1] = "Hallo";
mein_array[2] = true;

Anhand von eckigen Klammern können Sie wie folgt ein viertes Element hinzufügen:

mein_array[3] = "Georg";

Verwendung 4: Sie können eckige Klammern verwenden, um auf ein Element in einem mehrdimensionalen Array zuzugreifen. Der erste Satz Klammern gibt das Element im ursprünglichen Array an, der zweite Satz das Element im verschachtelten Array. Die folgende Codezeile zeigt die Zahl 6 im Ausgabefenster an:

ticTacToe = [[1,2,3],[4,5,6],[7,8,9]];
trace(ticTacToe[1][2]);
// Rückgabewert: 6

Verwendung 5: Sie können den Array-Zugriffsoperator anstelle der Funktion eval verwenden, um Werte für Movieclip-Namen oder eine beliebige Objekteigenschaft dynamisch einzustellen und abzurufen.

name["mc" + i] = "linke_Ecke";


Beispiel
Verwendung 1: Die folgenden Codebeispiele veranschaulichen zwei unterschiedliche Möglichkeiten zum Erstellen eines neuen leeren Array-Objekts. In der ersten Zeile werden eckige Klammern verwendet.

mein_array =[];
mein_array = new Array();

Verwendung 1 und 2: Im folgenden Beispiel wird ein Array namens mitarbeiter_array erstellt. Mit Hilfe der Aktion trace() werden die Elemente an das Ausgabefenster gesendet. In der vierten Zeile wird ein Element im Array geändert, und in der fünften Zeile wird das modifizierte Array an das Ausgabefenster gesendet:

mitarbeiter_array = ["Barbara", "Georg", "Maria"];
trace(mitarbeiter_array);
// Barbara, Georg, Maria
mitarbeiter_array[2]="Thomas";
trace(mitarbeiter_array);
// Barbara, Georg, Thomas

Verwendung 3: Im folgenden Beispiel wird der Ausdruck in eckigen Klammern ("teil" + i) ausgewertet und das Ergebnis als Name der aus dem Movieclip mein_mc abzurufenden Variablen verwendet. Die Variable i muss sich in der gleichen Zeitleiste befinden wie die Schaltfläche. Ist die Variable i beispielsweise gleich 5, wird der Wert der Variablen teil5 im Movieclip mein_mc im Ausgabefenster angezeigt:

on(release) {
x = mein_mc["teil"+i];
trace(x);
}

Verwendung 3: Im folgenden Beispiel wird der Ausdruck in eckigen Klammern ausgewertet und das Ergebnis als Name der aus dem Movieclip name_mc abzurufenden Variablen verwendet.

name_mc["A" + i];

Wenn Sie mit der ActionScript-Schrägstrichsyntax in Flash 4 vertraut sind, können Sie dies auch mit Hilfe der Funktion eval erreichen:

eval("name.A" & i);

Verwendung 3: Der Array-Zugriffsoperator kann auch auf der linken Seite einer Zuweisungsanweisung eingesetzt werden, um die Namen von Instanzen, Variablen und Objekten dynamisch einzustellen:

name[index] = "Gerhard";

das alles ! steht alleine zu dem kleinen zeichen [ ] dazu in der hilfe


lest das doch auch mal...irgend jemand hat sich dabei mal was gedacht, dass alles zu schreiben....



greetz

kelor
kelor ist offline   Mit Zitat antworten
Alt 02-08-2004, 10:10   #5 (permalink)
ActionStripper
 
Benutzerbild von Mr.Twister
 
Registriert seit: Nov 2001
Ort: Oldenburg
Beiträge: 3.275
hi kelor,

also ich sehe das nicht als giftig an.
und es ist auch okay, ich bin auch dafür, erstmal handbücher o.ä. zu lesen, bevor man fragt, aber ich hatte bis eben noch keine ahnung, daß meine frage irgend etwas mit den eckigen klammern zu tun hat.
das wort array verbinde ich eigentlich immer nur mit einer sammlung und nicht mit einer einzelnen variablen. (bis jetzt)

der einfache grund, weshalb ich nicht in der hilfe fündig geworden bin ist der, daß ich nicht wusste, wonach ich suchen sollte.
__________________
Design ist AUCH Geschmackssache.
Mr.Twister ist offline   Mit Zitat antworten
Alt 02-08-2004, 10:29   #6 (permalink)
querdenker
 
Benutzerbild von kelor
 
Registriert seit: Jun 2001
Ort: formel1-stadt hockenheim
Beiträge: 4.731
sorry twister...in dem fall hast du wohl recht...

obwohl

man kann ja auch mal völligst spontan - ohne reflextion - die hilfe öffnen und einfach mal von oben nach untern lesen, was es so gibt...
[so mach ich das immer am anfang einer neuen version...]


aber du hast recht, dass man durch gezieltes suchen nicht unbedingt fündig werden kann..wobei [nochmal...*g*]

Zitat:
ich verstehe jetzt auch endlich mal, was diese eckigen klammern manchmal in den pfaden zu bedeuten haben
du danach hättrest fündig werden können, wenn du einfach mal gesucht hättest...*zwinker*


greetz

kelor
kelor ist offline   Mit Zitat antworten
Alt 02-08-2004, 10:44   #7 (permalink)
ActionStripper
 
Benutzerbild von Mr.Twister
 
Registriert seit: Nov 2001
Ort: Oldenburg
Beiträge: 3.275
joa, recht haste *g*
bisher war mein interesse an diesen eckigen klammern wohl noch nicht groß genug :-)

man muss halt auch prioritäten setzen

okay, dann bastel ich mal weiter ...

greetz, twister
__________________
Design ist AUCH Geschmackssache.
Mr.Twister 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 08:28 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele