Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 15-02-2006, 18:00   #1 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Beiträge: 658
variablennamen in schleifen :: referenzierung in Flash

Hi Leute!

eine Frage aus meinem thread

die eigentliche in eigenes thema ist. also hier nochmal gefragt.

das mit der referenzierung in Flash verstehe ich irgendwie nie!

wie kann ich denn in der letzten schleife


PHP-Code:
for (j=0j<= anzahl_tracks 1j++) {
                
tracklist_tracks[j] = a_tracklist_tracks[j].firstChild.nodeValue;
                
trace("Track "+(j+1)+" "+tracklist_tracks[j]);
                
trackname[j].text "Track "+(j+1)+" "+tracklist_tracks[j]; 
                
trace("Ausgabe: "+trackname[j].text);
        } 
automatisch die textfelder füllen, die einzeln trackname1, trackname2.. heißen?

sachen wie

PHP-Code:
trackname[j].text
this
["trackname"+j].text 
funktionieren nicht!

danke!!!

Geändert von headkit (15-02-2006 um 18:11 Uhr)
headkit ist offline   Mit Zitat antworten
Alt 15-02-2006, 18:49   #2 (permalink)
Supermassive
 
Benutzerbild von elysian
 
Registriert seit: Aug 2004
Ort: Frankfurt, Bornheim
Beiträge: 861
...deine tracings funktionieren aber!?

eigentlich sieht das recht gut aus.
liegt das textfeld denn auch in dem scope, oder müsstest du das eventuell anders addressieren?

greetz, elysian.
__________________
Personal » amenity*blogging » elysian.de » Flexpertise - Enterprise Flex Collaboration
Networks » Xing » ColdFusion Community
Everything Cairngorm »
cairngormdocs.org
elysian ist offline   Mit Zitat antworten
Alt 15-02-2006, 19:01   #3 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Beiträge: 658
das erste trace geht, das zweite (und viel wichtigere) geht nicht.

Geändert von headkit (16-02-2006 um 10:45 Uhr)
headkit ist offline   Mit Zitat antworten
Alt 16-02-2006, 14:46   #4 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Beiträge: 658
keiner kennt sich mit richtiger referenzierung aus?
headkit ist offline   Mit Zitat antworten
Alt 16-02-2006, 14:54   #5 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Das mus dann entweder am falschen Pfad liegen, oder deine Variable "anzahl_tracks" ist gleich 1.

Teste mal ob er den Textfeldern etwas zuweist wenn du die Originalnamen in die Schleife packst und lass dir mal "anzahl_tracks" mit ausgeben.
__________________
ERROR: Signature is too large
rendner[i] ist offline   Mit Zitat antworten
Alt 16-02-2006, 15:15   #6 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Beiträge: 658
wie gesagt, das trace
PHP-Code:
trace("Track "+(j+1)+" "+tracklist_tracks[j]); 
funktioniert. und auch die anzahl der tracks stimmen.
ich kriege also mit obigem trace die tracks ausgelesen.

welche referenzierung auf ein textobkekt wäre denn prinzipiell die richtige?

PHP-Code:
trackname[j].text ???
this["trackname"+j].text ??? 
headkit ist offline   Mit Zitat antworten
Alt 16-02-2006, 15:18   #7 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Diese würde ich nehmen:
PHP-Code:
this["trackname"+j].text 
Du solltest aber dir mal "this["trackname"+j].text" tracen lassen, oder erst einmal nur "this["trackname"+j]" .
__________________
ERROR: Signature is too large
rendner[i] ist offline   Mit Zitat antworten
Alt 16-02-2006, 15:21   #8 (permalink)
Supermassive
 
Benutzerbild von elysian
 
Registriert seit: Aug 2004
Ort: Frankfurt, Bornheim
Beiträge: 861
hi, trace doch in der schleife mal
PHP-Code:
trace(typeof(tracklist_tracks[j])); 
kommt da "string" bei raus? falls nicht, ist das immer noch teil des xml-objekts und du musst für die zuweisung dasverwenden:
PHP-Code:
trace(tracklist_tracks[j].toString()); 
wenn schon "String" rauskommt, schau mal, welche länge er hat:
PHP-Code:
trace(tracklist_tracks[j].length()); 
kann mir aber eigentlich nicht vorstellen, dass es tatsächlich an der länge liegen soll.
ansonsten schieb doch mal den kram hier hoch, damit man sich das anschauen und probieren kann.

greetz, elysian.
__________________
Personal » amenity*blogging » elysian.de » Flexpertise - Enterprise Flex Collaboration
Networks » Xing » ColdFusion Community
Everything Cairngorm »
cairngormdocs.org
elysian ist offline   Mit Zitat antworten
Alt 16-02-2006, 15:26   #9 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Beiträge: 658
ist imemr alles "undefined"
headkit ist offline   Mit Zitat antworten
Alt 16-02-2006, 15:28   #10 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Zitat:
ist imemr alles "undefined"
Ist denn überhaupt deiner xml Datei vollständig geladen oder das Array "tracklist_tracks" erstellt wurden bevor du die for Schleife nutzt?
__________________
ERROR: Signature is too large

Geändert von rendner[i] (16-02-2006 um 15:29 Uhr)
rendner[i] ist offline   Mit Zitat antworten
Alt 16-02-2006, 15:28   #11 (permalink)
Supermassive
 
Benutzerbild von elysian
 
Registriert seit: Aug 2004
Ort: Frankfurt, Bornheim
Beiträge: 861
aber dieses gab das richtige aus???
PHP-Code:
trace(tracklist_tracks[j]); 
__________________
Personal » amenity*blogging » elysian.de » Flexpertise - Enterprise Flex Collaboration
Networks » Xing » ColdFusion Community
Everything Cairngorm »
cairngormdocs.org
elysian ist offline   Mit Zitat antworten
Alt 16-02-2006, 15:35   #12 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Beiträge: 658
jup.
headkit ist offline   Mit Zitat antworten
Alt 16-02-2006, 15:39   #13 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Beiträge: 658
was ich parallel probiere ist auch nicht schlecht,bringt aber noch kein gutes ergebnis:

PHP-Code:
for (j=0j<= anzahl_tracks 1j++) {
    
tracklist_tracks[j] = a_tracklist_tracks[j].firstChild.nodeValue;
    
full_tracklist full_tracklist +(j+1)+" "+tracklist_tracks[j] +" \n";
    
full_tracklist_txt.text full_tracklist;

da der erste eintrag natürlich NaN / undefined ist.
ausserdem scheint er dann alle tracklisten hintereinander zu knallen...

aber die richtung ist auch nicht schlecht.
headkit ist offline   Mit Zitat antworten
Alt 16-02-2006, 20:05   #14 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Beiträge: 658
got it!
war ja fast ein selbstgespräch.
danke trotzdem.
das schiweirigste ist nicht das problem zu lösen, sondern die richtige frage zu stellen...

hier der funktionierende code, wen's interessiert.
PHP-Code:
// ### TRACKLIST ###

function tracklist_einlesen (tracklist_index) {
    
tracklist_show artist_tracklist[tracklist_index];
    var 
XMLObj_Tracklist:XML = new XML();// Neues XML-Objekt anlegen
    
XMLObj_Tracklist.ignoreWhite true;// whitespace in XML ignorieren (z.B. CRLF etc)
    
XMLObj_Tracklist.onLoad tracklist_ausgeben;//onLoad-Handler zuweisen
    
XMLObj_Tracklist.load(tracklist_show);
    
trace ("lade Datei: " tracklist_show);
}
function 
tracklist_ausgeben (success) {
    
    if (
success) {
        var 
a_tracklist:Array = XPathAPI.selectNodeList(this.firstChild"/trackliste");
        var 
a_tracklist_tracks:Array = XPathAPI.selectNodeList(this.firstChild"/trackliste/track");
        var 
anzahl_tracks a_tracklist_tracks.length;
        
//trace ("anzahl_tracks: "+anzahl_tracks);

        
for (j=0j<= anzahl_tracks 1j++) {
                
tracklist_tracks[j] = a_tracklist_tracks[j].firstChild.nodeValue;

                if (
j==0) {                full_tracklist "01 "tracklist_tracks[0]+" \n";
                }
                else if (
j>&& j<10) {    full_tracklist full_tracklist "0"+(j+1)+" "+tracklist_tracks[j] +" \n";
                }
                else if (
j>=10) {        full_tracklist full_tracklist +(j+1)+" "+tracklist_tracks[j] +" \n";
                }
                
                
        }    
        
full_tracklist_txt.text full_tracklist;
        
    }

vielen dank, bis demnächst!

PS: der startthread, in dem das problem begann, findet sich hier: variablennamen in schleifen :: referenzierung in Flash

Geändert von headkit (16-02-2006 um 20:09 Uhr)
headkit 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 10:55 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele