Jump to content

Error en AS3 -> campoDeTexto.text = variable;


Recommended Posts

buenas, estoy empezando con ActionScript 3 y me estoy volviendo loco!! he probado a hacer un archivo a parte .as para hacer la variable global pero me sigue dando el error, así que lo pongo de la forma normal y se supone, a mi entender, que fácil... o eso pensaba :unsure:

 

En el fotograma 20:

 

var colorGanador:String; y por una función le doy un valor a colorGanador.

 

Ahora voy a el fotograma 30:

y es aquí donde tengo el problema, le quiero asignar colorGanador a un campo de texto dinámico

ganador_txt.text = colorGanador;

 

si el campo de texto lo tengo en el escenario, le asigna el valor y todo perfecto, peeero, yo lo que quiero es algo tan sencillo :unsure: como meter ese texto en un movieClip (podium) y asignarle el valor de la variable, pero no hay manera!

 

podium.ganador_txt.text = colorGanador; y nada, ni con this ni _root, ni con la variable global ni nada

 

me da el error:

TypeError: Error #1009: No se puede acceder a una propiedad o a un método de una referencia a un objeto nulo.

at carrera_fla::MainTimeline/frame30()

at flash.display::MovieClip/gotoAndStop()

at carrera_fla::MainTimeline/carrera()

 

¿alguna idea?

 

Gracias :)

Link to post
Share on other sites

vale, ya veo el problema, lo del texto y las variables lo hace bien, podium.ganador_txt.text = colorGanador;

la cosa es que dentro del movie clip podium, el texto no aparece hasta el fotograma 59, si lo pongo desde el principio sí que funciona, pero primero quiero que se vea la animación y luego que aparezca el texto por eso lo he metido en un clip de película :(

Link to post
Share on other sites

una solucion "vhapucera" pero que igual te sirve, ahora mismo no puedo probarlo coloca el texto dinamico desde el principio y hazlo invisible, y luego en el fotograma 59 lo muestras.

 

O bien crea dentro del clip podium una variable a la que asignes el valor y en el fotograma 59 la asignas al texto dinamico.

 

Suerte ;)

Link to post
Share on other sites

yuuuuujuu!! ufff! directamente he ido a la segunda opción y funciona!! uff! no sabía que fuese tan... lineal, quiero decir que pensaba que con mandar la variable al clip la leería desde cualquier fotograma! me estaba volviendo loco! jejeje!

 

Muchas gracias! :)

Link to post
Share on other sites

no funciona exactamente asi, si tu mandas una variable a un clip a don de la mandes, sea otra variable, un txt o lo que sea debe estar en ese fotograma, si esta mas adelante en la linea de tiempo considera que no existe.

 

Aunque ahora que lo pienso seria mas "limpio" en vez de andar con variables, en el mismo fotograma 59 cuando creas el texto dinamico hacer un ganador_txt.text=_root.colorGanador; (o _parent que desconozco la estructura de la pelicula)

 

Seguramente si pasase mas tiempo te diria una forma mas limpia de hacerlo, pero ahora mismo despues de nueve horas currando con ello no me da para mucho mas jeje

Link to post
Share on other sites

ya veo ya, por eso, me resolviste una buena duda! :D

 

he probado con lo de _root, pero parece que la han quitado en AS3 al igual que _global para definir variables (hace 5 años que no tocaba flash y ahora AS3, que es lo que quiero aprender, ha cambiado un huevo :S hace que me vuelva más loco :D)

 

con _root me pone: Warning: 1058: Problema de migración: la propiedad _root ya no se admite. Se ha quitado esta propiedad. El equivalente más próximo es Stage, que funciona como raíz de la lista de visualización de ActionScript 3.0.

 

el caso es que funciona como dijiste! jejeje! a descansar esa cabecita! :)

Link to post
Share on other sites

Buff el AS3 estara muy bien, no digo que no, y habra que actualizarse y todo eso, pero teniendo en cuenta que tendria que migrar chorrocientas apps de la empresa como que de momento sigo con el AS2 y que sea lo que dios quiera, si los clientes siguen con IE6 pues yo con AS2 XDD

Link to post
Share on other sites

jajaja! si eso está claro!! la cosa es que hay que actualizar el flash player de los navegadores a la versión 10, creo... y bueno, aunque poco a poco la gente se va actualizando los navegadores aún queda un tiempo hasta que lo tengan todos. Además, todo en AS2 va a seguir funcionando igual, así que el cambio a AS3 se puede hacer cuando a le venga en gana, tenga tiempo y esas cosillas, mi caso por ejemplo, después de 5 años, me va a costar mas pero me da menos pereza :D

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.