Comunidad de diseño web y desarrollo en internet online

¿Crear componentes dinamicamente?

Citar            
MensajeEscrito el 29 Mar 2005 04:26 pm
Como crearia un componente 'label' en unas determinadas coordenadas (por ej, x=200 e y=300) dinamicamente?

Me imagino q se puede hacer en flash, es la idea es crear una serie de etiquetas a las q dinamicamente les asignare valores

No se si me explique muy bien?

Gracias y un saludooo

Por SuperBittor

31 de clabLevel



 

firefox
Citar            
MensajeEscrito el 29 Mar 2005 05:23 pm
A ver este es el codigo

for (i=0; i<datos.getLength(); i++) {
_root.createTextField("mytext",1,100+10*i,100,300,100);
mytext.multiline = true;
mytext.wordWrap = true;
mytext.border = false;
mytext.text = "Aki iria el valor q yo kiero";
}

Lo maximo que he conseguido aha sido crear una sola label ya que no se como cambiar el nombre de la instancia "mytext". En PHP yo concatenaria mytext con $i pero en flash no se como hacerlo, alguien puede ayudarme?

Gracias y un cordial saludo a todos

Por SuperBittor

31 de clabLevel



 

firefox
Citar            
MensajeEscrito el 29 Mar 2005 05:46 pm
for (i=0; i<datos.getLength(); i++) {
createTextField("mytext"+i,1,100+10*i,100,300,100);
this["mytext"+i].multiline = true;
this["mytext"+i].wordWrap = true;
this["mytext"+i].border = false;
this["mytext"+i].text = "Aki iria el valor q yo kiero: "+i;
}

Por _david

565 de clabLevel


1 articulo

Genero:Masculino  

Bogota, Colombia

firefox
Citar            
MensajeEscrito el 29 Mar 2005 05:58 pm

Código :

for (i=0; i<datos.getLength(); i++) {
   createTextField("mytext"+i, i, 100*i, 100, 100, 100);
   this["mytext"+i].multiline = true;
   this["mytext"+i].wordWrap = true;
   this["mytext"+i].border = false;
   this["mytext"+i].text = "Aki iria el valor q yo kiero: "+i;
}

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

clabbrowser
Citar            
MensajeEscrito el 29 Mar 2005 07:15 pm
:?

ah ya vi el error, yo lo pondria en vez de i en la profundidad, getNextHighestDepth()...aunque por el getLength (no lo recuerdo, no es length?) supongo q es para mx

Por _david

565 de clabLevel


1 articulo

Genero:Masculino  

Bogota, Colombia

firefox
Citar            
MensajeEscrito el 29 Mar 2005 07:21 pm
Si, es que no funcionaba, le faltaban los niveles.

Lo de datos.getLength(), pues asi lo tiene el. Pero efectivamente en mx 2004 se acabaron las funciones seteadores y geteadores. En cambio se asignan los valores directamente.

Saludos!

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

clabbrowser
Citar            
MensajeEscrito el 30 Mar 2005 02:03 pm
He utilizado el codigo q me sugeristeis y no h elogrado crear mas que una sola label que curiosamente tiene como propiedad text mytext3.

El codigo que he puesto es este ( es q los 2 ultimos post no los entiendo)

for (i=1; i<=datos.getLength(); i++) {
_root.createTextField("mytext"+i,1,100+100*i,100,300,20);
_root['mytext'+i].multiline = false;
_root['mytext'+i].wordWrap = true;
_root['mytext'+i].border = true;
_root['mytext'+i].text = "mytext"+i;
}

Por favor si podeis ayudarme os lo agradeceria muchooooo, un saludo zzz:

Por SuperBittor

31 de clabLevel



 

firefox
Citar            
MensajeEscrito el 30 Mar 2005 02:24 pm
a ver, ya te dieron el código... ve las diferencias y checa qué estás haciendo mal.


createTextField("mytext"+i, i, 100*i, 100, 100, 100);
_root.createTextField("mytext"+i,1,100+100*i,100,300,20);

Por fael

BOFH

2443 de clabLevel

3 tutoriales
2 articulos

 

firefox
Citar            
MensajeEscrito el 30 Mar 2005 02:35 pm
joder, te juro que lo habia probado tal cual y no me iba. Parece que ahora si va, muchas gracias y perdon por las molestias y por no ser un experto programador en flash

En mi contra dire que no habia visto q el segundo parametro era una i (creia q era un uno), pero como lo que hice fue el tipico cortar pegar supongo q si ejecute en su momento el codigo correcto, en fin...

Muchas gracias de nuevo y peron por haceros perder el tiempo

Un saludo

Por SuperBittor

31 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 Abr 2005 11:36 am
A raiz de el codigo q me mandasteis me he puesto a modificar el codigo buscando crear movieclips independientes para poder darles diferentes animaciones.

El codigo es este:



datos.first();
for (i=1; i<=datos.getLength(); i++) {
createEmptyMovieClip("mv"+i,i);
_root['mv'+i]._x=100;
_root['mv'+i]._y=50*i*2;
_root['mv'+i].createTextField("t2"+i, i+4, 100, 50*i*2+20, 500, 20);
_root['mv'+i]['t2'+i].text = "Puntuación: "+datos.currentItem.N1;
datos.next();
}


y funciona perfectamente solo que tengo un problema, que son rutas absolutas ( _root )

he probado cambiando todas las apariciones _root por this (incluso _this), o no poniendo nada y no me funciona.

Sabe alguien como modificar el codigo ( o alguna sugerencia ) para que en vez de _root , lo referencia de alguna forma pero que las rutas sean relativas????

Muchas gracias y perdon por las molestias

Por SuperBittor

31 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 Abr 2005 01:59 pm
Ya esta solucionado, la verdad hay una solucion supersencilla y no me habia dado cuenta

Muchas gracias de todas formas por la ayuda prestada hasta el momentoooo

Un saludooooo :evil:

Por SuperBittor

31 de clabLevel



 

firefox

 

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