Foros del Web » Creando para Internet » Flash y Actionscript »

como crear un objeto (movie) al presionar un botón

Estas en el tema de como crear un objeto (movie) al presionar un botón en el foro de Flash y Actionscript en Foros del Web. Hola... Pueden ayudarme con lo siguiente?? Necesito que al presionar un botón, me cree un objeto (una movie) ojalá a partir de la copia de ...
  #1 (permalink)  
Antiguo 23/08/2006, 10:20
Avatar de Sir Matrix  
Fecha de Ingreso: octubre-2000
Ubicación: Dentro de mi cabeza. ono?
Mensajes: 1.264
Antigüedad: 23 años, 6 meses
Puntos: 3
Pregunta como crear un objeto (movie) al presionar un botón

Hola...

Pueden ayudarme con lo siguiente??

Necesito que al presionar un botón, me cree un objeto (una movie) ojalá a partir de la copia de otro objeto...

Podrían ayudarme ??? saludos
__________________
|||| ))>_<(( ||||
www.webmagic.cl <-- esta pagina está mala, no la busquen
  #2 (permalink)  
Antiguo 23/08/2006, 10:51
Avatar de Bandit
Moderador
 
Fecha de Ingreso: julio-2003
Ubicación: Lima - Perú
Mensajes: 16.726
Antigüedad: 20 años, 9 meses
Puntos: 406
Hola Sir Matrix:
No te entiendo, podrías explicar mejor lo que quieres hacer?.

Espero poderte ser de ayuda.
__________________
Bandit.
Si no sabes estudia y si sabes enseña.
http://www.banditwebdesign.com/
  #3 (permalink)  
Antiguo 23/08/2006, 10:57
Avatar de Sir Matrix  
Fecha de Ingreso: octubre-2000
Ubicación: Dentro de mi cabeza. ono?
Mensajes: 1.264
Antigüedad: 23 años, 6 meses
Puntos: 3
ok,

sólo se trata de lo siguiente:

Necesito que cuando se presione un botón dentro de un movie, se ejecute una acción que haga aparecer un objeto; Algo así sería en seudo código:

Al hacer clic en el botón (

Crear circulo de 5 x 5 pixeles;
colocar circulo en coordenada x=100;
colocar circulo en coordenada y=80;

)


No se mucho de programación en Actionscript, por lo que si me pueden ayudar con la sintaxis tanto mejor

saludos
__________________
|||| ))>_<(( ||||
www.webmagic.cl <-- esta pagina está mala, no la busquen
  #4 (permalink)  
Antiguo 23/08/2006, 12:42
Avatar de webseficientes  
Fecha de Ingreso: enero-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 320
Antigüedad: 19 años, 2 meses
Puntos: 14
En este caso una de las cosas que podes hacer es usar la funcion attachMovie, para atachar un elemento de la libreria a un movie clip, por ejemplo en tu caso queres duplicar un circulo.
Podes hacer, un circulo y guardarlo como movie clip, es decir convertirlo a movieclip.
Luego en el movie clip que queres que se cargue este circulo podes hacer. en una capa de codigo actionscript podes poner algo como los siguiente.

cargador_mc.attachMovie("nombre_obj_libreria","nom bre_a_usar_mc",this.getNextHighestDepth());

despues lo adecuas asi:


cargador_mc["nombre_a_usar_mc"]._width = 100; //el ancho
cargador_mc["nombre_a_usar_mc"]._y = 0; //poscion en y
cargador_mc["nombre_a_usar_mc"]._x = 50; //posicion en x

etc.

saludos.
__________________
Gerardo Benitez
Programador Web Freelance, SEO, Diseño web
  #5 (permalink)  
Antiguo 23/08/2006, 13:01
Avatar de Bandit
Moderador
 
Fecha de Ingreso: julio-2003
Ubicación: Lima - Perú
Mensajes: 16.726
Antigüedad: 20 años, 9 meses
Puntos: 406
Hola Sir Matrix:
Aquí tienes un ejemplo:
on(release){
_root.createEmptyMovieClip("rond",1);
rond.lineStyle(5,0,100);
rond.lineTo(.15,.45);
rond._x = 100;
rond._y = 80;
}

Espero haberte sido de ayuda.
__________________
Bandit.
Si no sabes estudia y si sabes enseña.
http://www.banditwebdesign.com/
  #6 (permalink)  
Antiguo 23/08/2006, 14:54
Avatar de Sir Matrix  
Fecha de Ingreso: octubre-2000
Ubicación: Dentro de mi cabeza. ono?
Mensajes: 1.264
Antigüedad: 23 años, 6 meses
Puntos: 3
Hola, muchas gracias por los códigos, el de Bandit me funciona muy bien, pero lo que necesito es más bien lo que coloca webseficientes... pero esto no me funciona...

Apreto y apreto el botón y nada... no tengo que declarar la función cargador_mc en alguna parte??? (perdon por la ignorancia)

Saludoss
__________________
|||| ))>_<(( ||||
www.webmagic.cl <-- esta pagina está mala, no la busquen
  #7 (permalink)  
Antiguo 23/08/2006, 15:58
Avatar de webseficientes  
Fecha de Ingreso: enero-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 320
Antigüedad: 19 años, 2 meses
Puntos: 14
Sir matrix, en lugar de cargador_mc, proba con "this.", se supone qeu cargador_mc, es la movie donde queres cargar el circulo.

proba asi.

this.attachMovie("nombre_obj_libreria","nom bre_a_usar_mc",this.getNextHighestDepth());

despues lo adecuas asi:


this["nombre_a_usar_mc"]._width = 100; //el ancho
this["nombre_a_usar_mc"]._y = 0; //poscion en y
this["nombre_a_usar_mc"]._x = 50; //posicion en x

avisame, sino y te envio un ejemplo en .fla
__________________
Gerardo Benitez
Programador Web Freelance, SEO, Diseño web
  #8 (permalink)  
Antiguo 23/08/2006, 16:22
Avatar de seyacat  
Fecha de Ingreso: agosto-2006
Mensajes: 382
Antigüedad: 17 años, 7 meses
Puntos: 0
No entiendo que es webseficientes.

Pero me parece que lo que deberias usar es un duplicador de movieclip

duplicateMovieClip("fuente","nuevoNombre",depth);
  #9 (permalink)  
Antiguo 23/08/2006, 17:13
Avatar de Sir Matrix  
Fecha de Ingreso: octubre-2000
Ubicación: Dentro de mi cabeza. ono?
Mensajes: 1.264
Antigüedad: 23 años, 6 meses
Puntos: 3
gracias, voy a probar;

pd:"webseficientes" es un usuario del foro que posteó más arriba XD
__________________
|||| ))>_<(( ||||
www.webmagic.cl <-- esta pagina está mala, no la busquen
  #10 (permalink)  
Antiguo 23/08/2006, 17:15
Avatar de seyacat  
Fecha de Ingreso: agosto-2006
Mensajes: 382
Antigüedad: 17 años, 7 meses
Puntos: 0
Jua Jua, que despiste
  #11 (permalink)  
Antiguo 23/08/2006, 17:17
Avatar de Bandit
Moderador
 
Fecha de Ingreso: julio-2003
Ubicación: Lima - Perú
Mensajes: 16.726
Antigüedad: 20 años, 9 meses
Puntos: 406
Lo que debe de estar pasando con el attach, es que no haz vinculado el MC que contiene el círculo.

Espero haberte sido de ayuda.
__________________
Bandit.
Si no sabes estudia y si sabes enseña.
http://www.banditwebdesign.com/
  #12 (permalink)  
Antiguo 23/08/2006, 17:22
Avatar de Sir Matrix  
Fecha de Ingreso: octubre-2000
Ubicación: Dentro de mi cabeza. ono?
Mensajes: 1.264
Antigüedad: 23 años, 6 meses
Puntos: 3
Gracias a todos, voy a probar todas las formas... pero ahora tengo un nuevo problema:::::
Necesito crear/copiar los objetos dinámicamente, y no sé cuantos objetos se van a crear... y todos deben tener atributos diferente (una posición diferente)... es decir algo como:

for (j=0; j<total; j++) {

_root.createEmptyMovieClip("rond"+j,1);
rond+j.lineStyle(5,0,100);
rond+j.lineTo(.15,.45);
rond+j._x = 100+j;
rond+j._y = 80+j;


Es decir, colocar diferentes parámetros a cada objeto creado/pegado, y no pueden llamarse igual :P

saludossss
__________________
|||| ))>_<(( ||||
www.webmagic.cl <-- esta pagina está mala, no la busquen

Última edición por Sir Matrix; 23/08/2006 a las 17:24 Razón: completar
  #13 (permalink)  
Antiguo 23/08/2006, 17:47
Avatar de seyacat  
Fecha de Ingreso: agosto-2006
Mensajes: 382
Antigüedad: 17 años, 7 meses
Puntos: 0
para llamar a los objetos ya duplicados dependiendo de la ubicacion del script y de los objetos

_root["rond"+j]._x
_parent.mc["rond"+j]._alpha
etc

Saludos X.
  #14 (permalink)  
Antiguo 24/08/2006, 09:35
Avatar de Sir Matrix  
Fecha de Ingreso: octubre-2000
Ubicación: Dentro de mi cabeza. ono?
Mensajes: 1.264
Antigüedad: 23 años, 6 meses
Puntos: 3
Muchas gracias... muy bueno y me ha funcionado... exepto que ahora tengo otro problema.... casi absurdo....

Cuando cargop los datos de esta manera no tengo problema:
for (j=0; j<3; j++) {
_root["rond"+j]._x=100

Pero cuando intento asignarle el valor que tomo de un XML no me lo toma... y me toma como que el valor es 0.
for (j=0; j<3; j++) {
_root["punto"+j]._x = my_xml.firstChild.childNodes[j].firstChild.nodeValue;

He corroborado con trace(my_xml.firstChild.childNodes[j].firstChild.nodeValue);y el dato
está bueno, pero no me toma el valor, de hecho he probado hacer lo siguiente:

ejex=my_xml.firstChild.childNodes[j].firstChild.nodeValue + 0;
_root["punto"+j]._x = ejex;

Pero tampoco toma el valor!!! que puede estar pasando????
__________________
|||| ))>_<(( ||||
www.webmagic.cl <-- esta pagina está mala, no la busquen
  #15 (permalink)  
Antiguo 24/08/2006, 10:32
Avatar de Sir Matrix  
Fecha de Ingreso: octubre-2000
Ubicación: Dentro de mi cabeza. ono?
Mensajes: 1.264
Antigüedad: 23 años, 6 meses
Puntos: 3
Es otra cosa!!

Le estuve haciendo traza al código y lo que está pasando es que los puntos creados se van borrando cuando aparecen nuevos puntos!!!
por eso parece que hubiera un sólo punto al darle al botón...

Tal vez si pudiera usar el código de webeficientes,,, o el duplicateMovieClip("fuente","nuevoNombre",depth);. . pero no me anda.....
saludos
__________________
|||| ))>_<(( ||||
www.webmagic.cl <-- esta pagina está mala, no la busquen
  #16 (permalink)  
Antiguo 24/08/2006, 11:24
Avatar de seyacat  
Fecha de Ingreso: agosto-2006
Mensajes: 382
Antigüedad: 17 años, 7 meses
Puntos: 0
Tu problema es basicamente este
createEmptyMovieClip("nombre",profundidad)

en profundidad pones siempre en 1, y solamente puedes tener un objeto por capa
por eso para profundidad tambien debes usar un valor siempre diferente

j+100
getMaxDepth()+1 //no estoy seguro de esta funcion

o cosas asi

y es exactamente igual que en duplicateMovieClip
  #17 (permalink)  
Antiguo 24/08/2006, 11:41
Avatar de Sir Matrix  
Fecha de Ingreso: octubre-2000
Ubicación: Dentro de mi cabeza. ono?
Mensajes: 1.264
Antigüedad: 23 años, 6 meses
Puntos: 3
Muy bueno!!
Lo he hecho de la sgte forma:

_root.duplicateMovieClip("PDV","punto"+j, j);

Muy simple y además me sirve para que cuando le den nuevamente al botón se borren o reemplazen los circulos anteriores.


soy feliz
__________________
|||| ))>_<(( ||||
www.webmagic.cl <-- esta pagina está mala, no la busquen
  #18 (permalink)  
Antiguo 24/08/2006, 11:48
Avatar de seyacat  
Fecha de Ingreso: agosto-2006
Mensajes: 382
Antigüedad: 17 años, 7 meses
Puntos: 0
yo siempre utiliza j+100 o algo asi mas que nada por que las primeras capas pueden estar siendo utilizadas por otros objetos en el flash que seran reemplazados por tus bolas locas.
  #19 (permalink)  
Antiguo 24/08/2006, 11:53
Avatar de Sir Matrix  
Fecha de Ingreso: octubre-2000
Ubicación: Dentro de mi cabeza. ono?
Mensajes: 1.264
Antigüedad: 23 años, 6 meses
Puntos: 3
ok, seguiré el consejo antes de que se conviertan en una bolas terroristas XD
__________________
|||| ))>_<(( ||||
www.webmagic.cl <-- esta pagina está mala, no la busquen
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:00.