In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

TSwitch onchange y el valor lChecked

Foro de Xailer profesional en español
Responder
Claudio C
Mensajes: 60
Registrado: Dom Sep 20, 2015 8:13 pm
Ubicación: Buenos Aires

TSwitch onchange y el valor lChecked

Mensaje por Claudio C »

Estimados:

Tengo un problema con TSwitch
1) Inicio la propiedad lChecked en .t.
2) Al cambiar de estado capturo el evento

METHOD SWChange( oSender ) CLASS xxxxx
local lEstado := ::oSW:lChecked

y en este metodo la propiedad lChequed sigue en .t. ( cuando ese era el estado inicial y hubo un cambio de estado )

3) Al salir del método cambia efectivamente en pantalla ...

Por el efecto visual del cambio hay un cierto delay en el 'movimiento' en pantalla y pareciese que el valor modificado solo se establece al 'terminar' este movimiento.

Si eso es correcto ... no puedo capturar el nuevo valor...
Si no debería haber un beforeChange() / afterchange() que de el valor antes del cambio o cuando ya se terminó de establecer.

Aguardo respuesta ( antes de volver a un checkbox )
Gracias por su tiempo.
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9252
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

Re: TSwitch onchange y el valor lChecked

Mensaje por ignacio »

Buenos días,

Si pudiera tener más de dos estados podría entender el problema. Le sugiero que haga:

lNewState := !oSender:lChecked

Podríamos tener un evento OnChanged como tenemos en algunos casos, pero me parece excesivo. Se ha modificado la clase para que mande como parámetro el nuevo valor.

Saludos
Ignacio Ortiz de Zúñiga
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Responder