mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: So 07.09.2008 20:28 Benutzername: Passwort: Auto-Login

Thema: Flash: Rechenproblem vom 15.02.2008

Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Multimedia -> Flash: Rechenproblem
Seite: 1, 2  Weiter
Autor Nachricht
gotoAndPlay
Threadersteller

Dabei seit: 22.11.2006
Ort: -
Alter: 24
Geschlecht: Männlich
Verfasst Fr 15.02.2008 12:34
Titel

Flash: Rechenproblem

Antworten mit Zitat Zum Seitenanfang

Moin,
ich will in einer Flash Animation etwas ausrechnen lassen.
Dafür lade ich eine XML Datei und weise dann die Variablen der XML Datei diversen Punkten zu.

Die Flash Datei soll nun die XML Felder xmlinhalt[3] und xmlinhalt[4] multiplizieren und in einem Textfeld ausgeben.


Code:

{
    var ausgabe = Number(xmlinhalt[3].text) *  Number(xmlinhalt[4].text);
         _root.veränderung.text = ausgabe;
}


Leider gibt er mir jedes mal als Antwort: NaN also (Not A Number, keine Zahl)

In der XML Datei sind aber nur Zahlen angegeben!


Zuletzt bearbeitet von gotoAndPlay am Fr 15.02.2008 13:34, insgesamt 2-mal bearbeitet
  View user's profile Private Nachricht senden
FlamingArt

Dabei seit: 08.06.2006
Ort: Essen
Alter: 30
Geschlecht: Männlich
Verfasst Fr 15.02.2008 13:12
Titel

Antworten mit Zitat Zum Seitenanfang

Alle Daten die Flash von extern kriegt haben den Typ String (mach mal typeof(xmlinhalt[3].text )

Richtig wäre in deinem Fall:

Code:

var ausgabe:Number = parseFloat(xmlinhalt[3].text) * parseFloat(xmlinhalt[3].text);
für Kommazahlen bzw.

Code:

var ausgabe:Number = parseInt(xmlinhalt[3].text) * parseInt(xmlinhalt[3].text);


für Ganzzahlen
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
gotoAndPlay
Threadersteller

Dabei seit: 22.11.2006
Ort: -
Alter: 24
Geschlecht: Männlich
Verfasst Fr 15.02.2008 13:39
Titel

Antworten mit Zitat Zum Seitenanfang

Ich habe den ActionScript jetzt so angepasst, wie Du es geschrieben hast:

Code:

{
 var ausgabe:Number = parseFloat(xmlinhalt[3].text) * parseFloat(xmlinhalt[4].text);
_root.veränderung.text = ausgabe;
}



Die Fehlermeldung bleibt aber bei NaN


Falls ich dich richtig verstanden habe, sollte ich auch den typeof-Operator verwenden, was ich auch gemacht habe:


Code:
{
 
typeof(xmlinhalt[3].text);
typeof(xmlinhalt[4].text);
 
  var ausgabe:Number = parseFloat(xmlinhalt[3].text) * parseFloat(xmlinhalt[4].text);
           _root.veränderung.text = ausgabe;
}


Doch auch hier bleibt die Ausgabe bei NaN
  View user's profile Private Nachricht senden
pejot

Dabei seit: 16.09.2004
Ort: Musikmetropole
Alter: 27
Geschlecht: Weiblich
Verfasst Fr 15.02.2008 14:54
Titel

Antworten mit Zitat Zum Seitenanfang

Wieso parst du deinen XML-Inhalt nicht direkt ins richtige Format, bevor du den Käse in dein Array schmeisst? * Keine Ahnung... *
Danach kannste immer noch rechnen.


Zuletzt bearbeitet von pejot am Fr 15.02.2008 14:55, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
pejot

Dabei seit: 16.09.2004
Ort: Musikmetropole
Alter: 27
Geschlecht: Weiblich
Verfasst Fr 15.02.2008 15:13
Titel

Antworten mit Zitat Zum Seitenanfang

Und mach mal das .text hinter deinem Array weg, das hat da nichts zu suchen! Dann klappts auch mit dem Nachbarn. *zwinker*

Und wenn du schon dabei bist – um den guten Stil zu waren – schmeiß die Sonderzeichen aus der Variable und verzichte in Zukunft darauf!
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
gotoAndPlay
Threadersteller

Dabei seit: 22.11.2006
Ort: -
Alter: 24
Geschlecht: Männlich
Verfasst Fr 15.02.2008 15:44
Titel

Antworten mit Zitat Zum Seitenanfang

Hmm, das ist gerade das zweite mal das ich was mit XML in Flash mache...

pejot hat geschrieben:
Und mach mal das .text hinter deinem Array weg, das hat da nichts zu suchen! Dann klappts auch mit dem Nachbarn. *zwinker*

Und wenn du schon dabei bist – um den guten Stil zu waren – schmeiß die Sonderzeichen aus der Variable und verzichte in Zukunft darauf!


Das .text sowie das Sonderzeichen habe ich entfernt.


pejot hat geschrieben:
Wieso parst du deinen XML-Inhalt nicht direkt ins richtige Format, bevor du den Käse in dein Array schmeisst? * Keine Ahnung... *
Danach kannste immer noch rechnen.


Kannst Du hier vielleicht etwas detaillierter werden *zwinker*

Denn trotz der Änderung klappt es nicht...

Meine XML Datei sieht so aus:

Code:

<feld monat8="832486"/>
<feld monatname8="Dezember 2007"/>


Und so hole ich sie mir in meine Flash Datei:

Code:
stop();
var XMLdaten = new XML();
XMLdaten.ignoreWhite=true;
XMLdaten.load("arbeitsmarkt.xml");
XMLdaten.onLoad = function(success) {
   anzahl = XMLdaten.firstChild.childNodes.length;
   xmlinhalt = [];
 {
         xmlinhalt[7]  = XMLdaten.firstChild.childNodes[7].attributes.monat10;
         xmlinhalt[8]  = XMLdaten.firstChild.childNodes[8].attributes.monatname10;
 }
gotoAndPlay(3);
}
  View user's profile Private Nachricht senden
FlamingArt

Dabei seit: 08.06.2006
Ort: Essen
Alter: 30
Geschlecht: Männlich
Verfasst Fr 15.02.2008 15:50
Titel

Antworten mit Zitat Zum Seitenanfang

Du versuchst einen String mit einer Zahl zu multiplizieren. Das kann doch garnicht gehen Lächel


Wieviel ergibt 6 * Februar ? Bestimmt nicht Dezember oder 12 Lächel
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
pejot

Dabei seit: 16.09.2004
Ort: Musikmetropole
Alter: 27
Geschlecht: Weiblich
Verfasst Fr 15.02.2008 15:59
Titel

Antworten mit Zitat Zum Seitenanfang

Mit strikter Typisierung wäre sowas nicht passiert. *zwinker*


PS. deine gepostete XML hat keine Kindknoten 7 & 8 und auch keine in firstChild verschachtelten Knoten * Ich bin ja schon still... *
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
 
Ähnliche Themen reine Flash-Seite oder lieber nur mit Flash-Elementen
[Flash,Swish] von Flash aus eine bestimmte Scene,Frame Laden
Flash-Animationen OHNE Macromedia Flash-Player abspielen
[Flash] Full Browser Flash - Bild auf 100% skalieren
Flash: Welcher Skill-Level für folgende Flash-Datei...
flash lite - 6300 - flash wallpaper mit uhr und datum !
Neues Thema eröffnen   Neue Antwort erstellen Seite: 1, 2  Weiter
MGi Foren-Übersicht -> Multimedia


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.