| |||||||
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: Jan 2002 Ort: Berlin
Beiträge: 13
| array stringelemente in number konvertieren
Hallo! Ich habe folgendes Problem: Ich lade aus einer externen txt datei variablen in einen flash film beispiel inhalt txt datei: &xpos=100,200,300,400& wird reingeladen über: contentex = new LoadVars (); contentex.onLoad = function (success) { if (success) { xholder = this.xpos.split (","); } }; contentex.load ("pos_values.txt"); da krieg ich dann nen Array raus: Variable _level0.xholder = [Objekt #7, Klasse 'Array'] [ 0:"100", 1:"200", 2:"300", 3:"400" ] Nun sind die Elemente aber Strings: Einzelne Strings konvertieren ist ja nun nicht das Problem via Number() Aber kann ich den gesamten Array konvertieren, so dass im Endeffekt folgendes rauskommt. Variable _level0.xholder = [Objekt #7, Klasse 'Array'] [ 0:100, 1:200, 2:300, 3:400 ] Ich brauche die Zahlenwerte um sie später auf die folgende Weise zu verwursten: var pos = 0; var counter = xholder.length +1; for (var i=1; i<counter; i++) { _root.attachMovie('clip', objektname[pos], i, {_x:this.xholder[pos], _y:this.yholder[pos}); _root.pos++; } Lässt sich da mit dem Array was daddeln? Vielen Dank im Voraus Andreas |
| | |
| | #4 (permalink) |
| Neuer User Registriert seit: Jan 2002 Ort: Berlin
Beiträge: 13
| soweit hab ichs kapiert aber...
soweit hab ichs kapiert und an meine bedürfnisse angepasst contentex = new LoadVars (); contentex.onLoad = function (success) { if (success) { xholderex = this.xpos.split (","); var iterator = xholderex.length; xholder = []; for (var i = 0; i<iterator; i++) { _root.xholder.push(Number(xholderex[i])); trace(xholder[i]); } } } contentex.load ("pos_values.txt"); aber wie komme ich an xholder ausserhalb der funktion ran bzw wie kippe ich xholder in einen globalen container? danke schon mal andreas |
| | |
| | #6 (permalink) |
| dummschnack Registriert seit: Mar 2002 Ort: Essen
Beiträge: 1.778
|
Hi! Da hat der Warrant recht! Aber wenn alle Stricke reissen, mach einfach bei der initialisierung ein _global davor, dann kannst du es von überall mit xholder[n] ansprechen: ActionScript:
Aber nebenbei, nur so als Tipp: Du brauchst die Strings in dem Array gar nicht in Numbers konvertieren, das macht Flash für dich! Gruss, Chino |
| | |
| | #8 (permalink) |
| dummschnack Registriert seit: Mar 2002 Ort: Essen
Beiträge: 1.778
|
Hi Warrant! Da gibt´s nicht viel zu erklären... deinMC._x = "100" macht das gleiche wie deinMC._x=100; Weiteres Beispiel: this.lineStyle (1, 990099, 100); this.lineTo (100, "100"); Flash biegt sich halt in den meisten Fällen die Parameter so wie sie gebraucht werden. Gruss, Chino Geändert von Chino (21-08-2003 um 22:18 Uhr) |
| | |
| | #9 (permalink) |
| _//\\#//\\_ Registriert seit: Jan 2003
Beiträge: 7.060
|
naja, wenn man einen string aber als number brauch, dann weiß flash das ja nun nicht automatisch...(wär ja noch schöner.... )ActionScript:
txt: &daten=100|200|300& |
| | |
| | #10 (permalink) |
| dummschnack Registriert seit: Mar 2002 Ort: Essen
Beiträge: 1.778
|
Japp, schon klar... Habe mich wohl etwas unglücklich ausgedrückt. Das gilt natürlich nicht generell. Aber manchmal kann man sich die Umwandlung halt sparen. Natürlich ist dein Weg sauberer, das steht außer Frage! Gruss, Chino |
| | |
| | #11 (permalink) |
| dummschnack Registriert seit: Mar 2002 Ort: Essen
Beiträge: 1.778
|
Und weil ich es ja nicht lassen kann, hier mal eine Version als Array.prototype... ActionScript:
Gruss, Chino |
| | |
| | #12 (permalink) |
| Neuer User Registriert seit: Jan 2002 Ort: Berlin
Beiträge: 13
| was alles so passiert wenn man schläft
Guten Morgen! Kaffee ist fertig! Danke erstmal für die Resonanz. Ich hab auch gedacht, dass xholder im root liegt, aber die folgeschleife gibt mir beim tracen undefined aus und setzt die entsprechenden werte auf 0. trace gibt in der der schleife innerhalb der funktion korrekte Werte zurück Lass ich aber das trace in der folgeschleife ausführen bekomme ich undefined zurück! weder root noch global funktionieren. und ich check es einfach nicht warum es da hakt. ich häng mal die datei dran und wäre glucklitsch wenn da mal jemand drüberfliegen könnte. Gruss Andreas |
| | |
| | #13 (permalink) |
| dummschnack Registriert seit: Mar 2002 Ort: Essen
Beiträge: 1.778
|
Moin! Das kommt daher, weil du die forSchleife startest, bevor die onLoad Aktion fertig ist. Also ist xholder noch gar nicht definiert... Pack am besten alles was nach dem loadVars kommt in eine Funktion, und rufe diese dann aus dem lv.onLoad Block auf! Gruss, Chino! |
| | |
| | #14 (permalink) |
| Neuer User Registriert seit: Jan 2002 Ort: Berlin
Beiträge: 13
| danke!!!!!
Hat zwar ne weile gedauert bis ich es geschnallt habe. Aber das O'Reilly von Moock hat mir dann doch noch die Augen geöffnet. Danke nochmal für die Hilfe jetzt funktioniert alles wie es soll. Gruss Andreas |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |