Comunidad de diseño web y desarrollo en internet online

Ayuda con Sprite

Citar            
MensajeEscrito el 27 Dic 2008 11:22 am
Quiero hacer un Sprite que es un círculo con una letra en el medio. Yo se hacer el circulo con un relleno de color pero no se añadirle la letra en una localización concreta


var miCirculo:Sprite = new Sprite();
miCirculo.graphics.beginFill(0xFFCC00);
miCirculo.graphics.drawCircle(40, 40, 40);

miCirculo.¿¿¿¿¿¿???????? // Como le añado aquí una letra???

addChild(circle);


Gracias y a ver si podeis ayudarme.

Por Asturkon35

4 de clabLevel



 

msie7
Citar            
MensajeEscrito el 27 Dic 2008 12:19 pm
Agrega un campo de texto, y en el campo de texto le asignas como texto la letra

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 27 Dic 2008 12:49 pm
Gracias Jorge, te refieres a un TextField???

Perdona pero soy principiante en esto.
Como quedaría el código???

Por Asturkon35

4 de clabLevel



 

msie7
Citar            
MensajeEscrito el 27 Dic 2008 01:06 pm
Sip, a que crees un TextField

Código ActionScript :

var micampo:TextField = new TextField()
micampo.text = "A"
addChild(micampo)


Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 27 Dic 2008 01:31 pm
Eso esta muy bien, pero mi problema es que esa letra no forma parte del Sprite. Me explico, si yo quiero mover el Sprite original (recuerda que era un circulo) la letra no se mueve con el.

De la misma manera que sobre un Sprite puedo dibujar lineas, circulos .....
miSprite.graphics.lineTo(....
miSprite.graphics.drawCircle(....
tiene que haber una manera de ponerle una letra (o un texto) y que forme parte de el

Me explico mejor ahora?

Un saludo y perdona por las molestias.

Por Asturkon35

4 de clabLevel



 

msie7
Citar            
MensajeEscrito el 27 Dic 2008 02:09 pm
Agregalo al sprite

miCirculo.addChild(miCampo)

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 27 Dic 2008 02:18 pm
Ahora si. Muchas gracias Jorge

Por Asturkon35

4 de clabLevel



 

msie7
Citar            
MensajeEscrito el 27 Dic 2008 05:42 pm
Ahora tengo un nuevo problema. Quiero programarle los eventos de arrastrar y soltar sobre el sprite del circulo con la letra. Si arrastro el sprite anclandolo por donde no coincida con la letra toda va bien, pero si lo intento arrastrar por la letra (TestField) no me deja, ademas me aparece el cursor de texto y desaparece el cursor del ratón.

Por Asturkon35

4 de clabLevel



 

msie7
Citar            
MensajeEscrito el 28 Dic 2008 12:58 pm
No lo hagas seleccionable

micampo.selectable = false

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 28 Dic 2008 03:17 pm
Eso soluciona el problema del cursor pero no el del arrastre, es decir, si intento arrastrar la ficha anclandola por el numero no me lo permite ya que no se han definido acciones para los eventos startDrag y stopDrag en el textField por lo que ademas el depurador me da los correspondientes mensajes de error.
Lo que busco es que el Sprite se comporte como una unidad y no tener que programar los mismos eventos para cada elemento que le añada al Sprite, no se si me explico.

Por Asturkon35

4 de clabLevel



 

msie7
Citar            
MensajeEscrito el 07 Ene 2009 02:31 pm
Hola Asturkon35:

He intentado resolver tu problema y creo que la solución es la siguiente; atandiendo a las indicaciones que te han ido dando.

Código ActionScript :

//Crear el Texto
var texto:TextField = new TextField();
texto.text="Arrástrame";
texto.selectable=false;
texto.x=15;
texto.y=30;
//Crear el círculo
var miCirculo:Sprite = new Sprite();
miCirculo.graphics.beginFill(0xFFCC00);
miCirculo.graphics.drawCircle(40, 40, 40);

//Insertar el texto en el círculo
miCirculo.addChild(texto);

//Insertar el conjunto en el escenario
addChild(miCirculo);

//Asignar los detectores
miCirculo.addEventListener(MouseEvent.MOUSE_DOWN,Arrastrar);
miCirculo.addEventListener(MouseEvent.MOUSE_UP,Soltar);

//Funciones Arrastra/Soltar
function Arrastrar(e:MouseEvent) {

   miCirculo.startDrag();
}
function Soltar(e:MouseEvent) {

   miCirculo.stopDrag();
}


El efecto creo que es el que querías.



Un saludo.
Joaquín.

Por JoaquinF

5 de clabLevel



 

msie7
Citar            
MensajeEscrito el 07 Ene 2009 02:53 pm
He incluido una animación con el resultado final utilizando las etiqueta para insertar una animación flash y escribiendo entre ellas la URL donde tengo alojado el fichero ".SWF", pero no sale. NO sé si es que he hecho algo mal. Más abajo lo repito y pongo el enlace a la página, por si acaso.
[flash width= height=]http://joaquinfb.iespana.es/cristalab/Arrastrar.swf [/flash]

[url=]http://joaquinfb.iespana.es/cristalab/Arrastrar.swf
Saludos.
Joaquín

Por JoaquinF

5 de clabLevel



 

msie7
Citar            
MensajeEscrito el 07 Ene 2009 02:57 pm
Dado que es un problema bastante común con una solución muy simple, puedes redactar el problema, la solución, poner el ejemplo y el fla en la sección de tips, luego un moderador copiará los archivos al servidor de Cristalab y seguramente subirá tu Clablevel ;)

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 10 Ene 2009 09:37 am
Al final yo lo había resuelto poniendo la propiedad "mouseEnabled" del "textField" con valor "false".
Hacia varios dias que no consultaba este hilo y no sabia que seguiais respondiendome asi que muchas gracias
.... y hasta mi proxima duda

Un saludo

Por Asturkon35

4 de clabLevel



 

msie7

 

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