Comunidad de diseño web y desarrollo en internet online

Problema de suma simple en flash.

Citar            
MensajeEscrito el 07 Jun 2010 06:11 pm
Hola a todos!

Tengo un problema simple, pero que me ha tenido casi dos horas atascado en un parte de mi proyecto.
Trato de hacer una suma simple en flash.

Tengo tres campos de texto (dos Input y un Dynamic para la respuesta), y un boton.
En el boton tengo el siguiente cogido:

Código ActionScript :

on (release){
resp3.text = Number(valor1.text) + Number(valor2.text);

El problema es que en el campo dinamico resp3 SIEMPRE sale ese feo NaN (Not a Number).

Ya no sé qué hacer. He perdido mucho tiempo y mucho pelo con este problema.
Ya he revisado los nombres de instancias, el tipo de TextField... Todo.
No sé qué haceer.
Por favor ayuda!

Por mizho18

1 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 Jun 2010 03:24 am
Los casts (conversiones) son correctos, debo pensar que el problema está en los valores que asignas a los campos de texto ¿usas decimales? Si los usas ¿los separas con un punto?

Por The Fricky!

Presidente

6168 de clabLevel

3 tutoriales
8 articulos

Genero:Masculino   Bastard Operators From Hell Héroes

Piccola Venezia...

chrome
Citar            
MensajeEscrito el 08 Jun 2010 02:59 pm
Hola.

Como dice The Fricky!, el codigo AS esta bien, el problema podria venir de el uso de decimales... Usar puntos en un numero decimal (ej: 3.14) es aceptable en Flash, pero la coma no es valida para hacer operaciones matematicas...

[quote=mizho18]Ya he revisado los nombres de instancias, el tipo de TextField... Todo. [/quote]

Si los campos de texto tiene el nombre de instancia correcto, se supone que debe funcionar :S, deberias ver si no los tienes mal o si los estas asignando en el "var" y no en la instancia. Tambien revisa la ubicacion de los campos de texto, Si estan dentro de un MC debes darle la ruta al codigo de donde esta el campo:

por ejemplo, si los campos estan dentro de un MC pero el boton de la suma NO, supongamos que este tiene como nombre de instancia "calculadora":

Código ActionScript :

on (release){
calculadora.resp3.text = Number(calculadora.valor1.text) + Number(calculadora.valor2.text);
}


Ahi segiria la ruta del TextInput..

Saludos y cuentas aver si lo haz solucionado :)

Por Quarterback

171 de clabLevel

1 tutorial

Genero:Masculino  

Santa Marta, Colombia

msie8
Citar            
MensajeEscrito el 08 Jun 2010 04:32 pm
Gracias por sus respuestas!

The Fricky! escribió:

debo pensar que el problema está en los valores que asignas a los campos de texto ¿usas decimales? Si los usas ¿los separas con un punto?


No. Los números que ingreso son enteros. Con 2 y 5, por ejemplo, sale NaN. :s
Además traté probando el proyecto en mi laptop... pero lo mismo.


Quarterback escribió:


Tambien revisa la ubicacion de los campos de texto, Si estan dentro de un MC debes darle la ruta al codigo de donde esta el campo


Antes todo estaba en el root; los cuatro objetos.
Ahora, por motivos de interactividad, el botón se encuantra dentro de tres movieclips (y en el segundo movieclip está en el segundo frame). Además, para reducir la probabilidad del mismo error, eliminé un input y ahora el código quedó así:

Código ActionScript :

_root.res1.text = 1010 + Number(_root.num1);


Ambos, el texto dinamico para la respuesta y el input están en el root. Y el valor que se ingrese solo se sumaría a 1010, y no al valor de otro input.

Para mi sorpresa... el mismo error.

¿Creen que sea mi flash? Estoy usando as2 y flash cs4.

ugg... voy a morir más jóven por esto...

Por mizho18

1 de clabLevel



 

firefox
Citar            
MensajeEscrito el 09 Jun 2010 02:06 am
Hola.

El codigo que usa tiene un pequeño error:

en el _root.num1 te ha faltado colocar el "[b].text"/b]", un pequeño error.. pero grave

Código ActionScript :

_root.res1.text = 1010 + Number(_root.num1.text);


Saludos xD

Por Quarterback

171 de clabLevel

1 tutorial

Genero:Masculino  

Santa Marta, Colombia

msie8
Citar            
MensajeEscrito el 09 Jun 2010 04:15 pm
Esto es muy raro....
ya corregí eso. pero NaN se queda conmigo.... :'(

Por mizho18

1 de clabLevel



 

firefox
Citar            
MensajeEscrito el 09 Jun 2010 04:30 pm
Sin comentarios xD

El codigo que te he dado sirve, el problema... puede ser el Flash que tienes.

Yo use campos de texto de introduccion, pero es igual que el componente TextField, asi que ambos sirven...

Saludos

Por Quarterback

171 de clabLevel

1 tutorial

Genero:Masculino  

Santa Marta, Colombia

chrome
Citar            
MensajeEscrito el 17 Oct 2010 10:55 pm
hola que tal, bueno yo tenia el mismo problema del tan famoso NAN, lo mas raro es que en ocasiones anteriores todo iba bien y no me habia ocurrido, ok bueno pues el NAN se debe en mi caso porque al crear los campos con valores tenian un espacio en blanco, me refiero al contenido, o la visualizacion, las instancias estan correctas.

Digamos que dibujo mi caja de texto y adentro de esta le coloco un 1000, sin querer presiono un espacio con barra espaciadora, entonces ya quedaria 1000espacioenblanco,quiten ese espacio en blanco, es por ello que salia el NAN,se debe de tener cuidado con eso.

saludos. :)

Por sdarks

25 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.