Página 1 de 1

Tipo de control

Publicado: Vie Mar 16, 2012 10:00 am
por perolero
Hola:
Necesito saber que tipo de control tiene el foco en un momento dado en un formulario. La idea es al estar trabajando con un formulario y pulsar p.e. la tecla F8 reconocer el tipo de control
si pulso F8 con el foco sobre una imagen
SetKey(119, , {|| msginfo(Self:oActiveControl)})
me devuelve {TImage}
pero yo lo que quiero es poder preguntarle, si es una imagen haz tal cosa, si es un boton haz tal otra, y esto es lo que no se como hacer.
Un saludo,
Emilio Gil.

Tipo de control

Publicado: Vie Mar 16, 2012 11:13 am
por Roberto
try this:
SetKey(119, , { || myActiveControl(Self:oActiveControl) })

FUNCTION myActiveControl(oControl)
WITH OBJECT oControl
DO CASE
CASE :IsKindOf("TImage")
MsgInfo("es imagen, haz tal cosa")
CASE :IsKindOf("TButton")
MsgInfo("es un boton, haz tal otra")
OTHERWISE
MsgInfo("es otro")
ENDCASE
END OBJECT
RETURN NIL

Tipo de control

Publicado: Lun Mar 19, 2012 11:12 am
por jfgimenez
Emilio,
> Necesito saber que tipo de control tiene el foco en un
> momento dado en un formulario. La idea es al estar
> trabajando con un formulario y pulsar p.e. la tecla F8
> reconocer el tipo de control
>
> si pulso F8 con el foco sobre una imagen
>
> SetKey(119, , {|| msginfo(Self:oActiveControl)})
>
> me devuelve {TImage}
>
> pero yo lo que quiero es poder preguntarle, si es una imagen
> haz tal cosa, si es un boton haz tal otra, y esto es lo que
> no se como hacer.
IF ::oActiveControl:IsKindOf( "TImage" )
...
ELSEIF ::oActiveControl:IsKindOf( "TButton" )
...
....
Un saludo,
José F. Giménez
http://www.xailer.com
http://www.xailer.info

Tipo de control

Publicado: Mié Mar 21, 2012 7:28 pm
por perolero
Mucjas gracias Jose.
Un saludo,
Emilio Gil.