Comunidad de diseño web y desarrollo en internet online

Referenciar en una funcion al objeto que llama a esa funcion

Citar            
MensajeEscrito el 17 Ago 2009 05:35 pm
Hola, bueno mi duda no es directamente ActionScript, tiene que ver con Flex3 y ActionScript, el problema es el siguiente:

Tengo varios mx:Label en mi programa, basicamente lo que quiero es usarlos como un boton o enlace, al estilo de JavaScript, usando CSS para que al poner el cursor encima las letras cambien de color y pongan el estilo subrayado, y que al retirar el cursor vuelva al estilo original, en negro y sin subrayado.

Ademas al evento click le he asignado una funcion para que cambie un par de cosillas, asi que la parte de mxml está asi:

Código Flex :

<mx:Label text="Hoteles" id="l1" x="23" y="0" click="change('hotel')" mouseOver="cambia('encima')" mouseOut="cambia('fuera')"/>


En cambia(a:String) va a ser donde aplique los estilos, hasta ahora lo hice con

Código ActionScript :

l1.setStyle("color",0x0174DF);
pero no me vale porque no sería genérico, yo necesito usar esa función para Label id="l2" y Label id="l3" .....

Por tanto, ¿cómo puedo llamar al objeto desde el cual estoy invocando la función?
En este caso al objeto label que llama a la función cambia(String) ???


Espero que se haya entendido. Gracias y un saludo.

Por riestra

73 de clabLevel



 

firefox
Citar            
MensajeEscrito el 18 Ago 2009 11:01 am
Usa:

Código ActionScript :

mouseOver="cambia(event)"


En la función

Código ActionScript :

private function resalta(evt:MouseEvent):void{
  Label(evt.target).setStyle("color",0x0174DF);
}


Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 18 Ago 2009 12:16 pm
Hola, al hacer lo que me has dicho me da este error:
TypeError: Error #1034: Error de conversión forzada: no se puede convertir mx.core::UITextField@1840a5b1 en mx.controls.Label.
¿Qué opinas? Salu2.

Por riestra

73 de clabLevel



 

firefox
Citar            
MensajeEscrito el 18 Ago 2009 12:34 pm
Prueba sin el cast o haciendo cast a evt.currentTarget:

Label(evt.currentTarget).setStyle("color",0x0174DF);

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 18 Ago 2009 12:59 pm
Label(evt.currentTarget).setStyle("color",0x0174DF);

Ahora sí.
Gracias.

Por riestra

73 de clabLevel



 

firefox

 

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