Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 14-06-2004, 16:55   #1 (permalink)
PhilippB
 
Registriert seit: Jun 2004
Ort: Pforzheim
Beiträge: 5
Question Problem mit duplicateMovieclip und dynamischer Bennenung

Gute Tag liebe Leute!

ich habe jetzt mal folgendes Problem:

Ich lese in Flash ein xml File aus und für jedes xml item soll ein movieclip mit duplicateMovieclip repliziert und an einer bestimmten Position angzeigt werden. So soll dann am Ende nach und nach eine Liste in Flash entstehen.
Hier das Skript:

testmc._visible = false;
testmc.testvar = "Dummie"

mein_xml = new XML();
mein_xml.ignoreWhite = true;
mein_xml.load("index.xml");
mein_xml.onLoad = function(status) {
if (status && this.loaded) {
_global.anzahl = mein_xml.firstChild.childNodes.length;
geladen = true;
trace("xml Loaded!");
trace("Anzahl = "+anzahl);
}
yrefer = 0;
for (i=0; i<mein_xml.firstChild.childNodes.length; i++) {
duplicateMovieClip("testmc","item_"+mein_xml.first Child.childNodes.id,0);
NamedesNeuenMCs._visible = true;

Nur wie sprech ich den neuen MC jetzt an? Ich kenn ja seinen Namen nicht, bzw. der Name ist ja bei jedem Durchlauf ein anderer!! Gibts da irgendeine clevere Lösung?

Vielen Dank im voraus für eure Hilfe!!!

Philipp
Philipp Bauknec ist offline   Mit Zitat antworten
Alt 14-06-2004, 17:00   #2 (permalink)
Neuer User
 
Benutzerbild von lernenOhneEnde
 
Registriert seit: Jun 2004
Beiträge: 77
Schreib den Namen doch in einen Array - die Durchlaufnummer ist dann die Arraynummer unter der du den Namen auslesen kannst.

loe

Geändert von lernenOhneEnde (14-06-2004 um 17:02 Uhr) Grund: korrektur
lernenOhneEnde ist offline   Mit Zitat antworten
Alt 14-06-2004, 17:01   #3 (permalink)
_//\\#//\\_
 
Benutzerbild von warrantmaster
 
Registriert seit: Jan 2003
Beiträge: 7.060
PHP-Code:
var mc=this.duplicateMovieClip("testmc","item_"+mein_xml.firstChild.childNodes.id,0);
mc._visible true
warrantmaster ist offline   Mit Zitat antworten
Alt 14-06-2004, 17:02   #4 (permalink)
PhilippB
 
Registriert seit: Jun 2004
Ort: Pforzheim
Beiträge: 5
Hi,

vielen Dank für deine schnelle Antwort! Ich habe bisher noch nie mit einem Array gearbeitet. Gibts dazu ein kurzes Beispiel zum begreifen? :-)

Vielen Dank

Philipp
Philipp Bauknec ist offline   Mit Zitat antworten
Alt 14-06-2004, 17:18   #5 (permalink)
PhilippB
 
Registriert seit: Jun 2004
Ort: Pforzheim
Beiträge: 5
komme mit array nicht klar...

hi,

habs jetzt so gebaut:

PHP-Code:
testmc._visible false;
testmc.testvar "Dummie"

mein_xml = new XML();
mein_xml.ignoreWhite true;
mein_xml.load("index.xml");
mein_xml.onLoad = function(status) {
    if (
status && this.loaded) {
    
_global.anzahl mein_xml.firstChild.childNodes.length;
    
geladen true;
    
trace("xml Loaded!");
    
trace("Anzahl = "+anzahl);
    }
    
yrefer 0;
    
item = new Array(anzahl);
    
0;
    for (
i=0i<mein_xml.firstChild.childNodes.lengthi++) {
        
trace("entered Circle!");
        
//die liste wird in die combobox übergeben
        //suchwort sind die labels, alle daten werden in i übernommen 
        
item[z] = duplicateMovieClip("testmc","item_"+z,0);
        
item[z]._visible true;
        
item[z].yrefer;
        
yrefer yrefer 30;
        
item[z].testvar mein_xml.firstChild.childNodes.id;
        
trace(yrefer);
        
trace(item[z].testvar);
        
1;
    }
};

stop(); 
funktioniert nur leider net! was mache ich denn falsch?

grüße Philipp
Philipp Bauknec ist offline   Mit Zitat antworten
Alt 14-06-2004, 19:33   #6 (permalink)
Neuer User
 
Benutzerbild von lernenOhneEnde
 
Registriert seit: Jun 2004
Beiträge: 77
Hallo,

wenn du den Namen nur an einer Stelle nämlich gleich im Anschluss an die erstellung des MC's benötigst, ist der Weg wie das Warrantmaster geschrieben hat, sicherlich die schnellste und einfachste Art.
Wenn du den Namen zu einem späteren Zeitpunkt nochmal benötigst, dann wäre Array der ideale Weg.

Code:
testmc._visible = false; 
testmc.testvar = "Dummie" 

mein_xml = new XML(); 
mein_xml.ignoreWhite = true; 
mein_xml.load("index.xml"); 
mein_xml.onLoad = function(status) { 
    if (status && this.loaded) { 
    _global.anzahl = mein_xml.firstChild.childNodes.length; 
    geladen = true; 
    trace("xml Loaded!"); 
    trace("Anzahl = "+anzahl); 
    } 
    yrefer = 0; 
    item = new Array(anzahl); 
    for (i=0; i<mein_xml.firstChild.childNodes.length; i++) { 
        trace("entered Circle!"); 
        //die liste wird in die combobox übergeben 
        //suchwort sind die labels, alle daten werden in i übernommen 
        item[i] = mein_xml.firstChild.childNodes.nodeName;
        duplicateMovieClip("testmc","item_"+i,0); 
        this[item[i]]._visible = true; 
        this[item[i]]._y = yrefer; 
        yrefer = yrefer + 30; 
        this[item[i]].testvar = mein_xml.firstChild.childNodes.id; 
        trace(yrefer); 
        trace(this[item[i]].testvar); 
    } 
}; 

stop();
zuerst Namen in Array speichern
z war überflüssig da gleich wie i
der Name ist nicht item[i], sondern der Wert von item[i], daher eval oder []
die y-Wert ist eine eigenschaft, daher _y

ich hoffe es funktioniert

loe
lernenOhneEnde 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 05:06 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele