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.

los TdbBrowse con lFilterBar y el evento on exit

Foro público de Xailer en español
Responder
fredy[1]
Mensajes: 218
Registrado: Mar Mar 08, 2005 2:03 am

los TdbBrowse con lFilterBar y el evento on exit

Mensaje por fredy[1] »

Hola!,
Tengo un formulario con un evento onExit en un TdbEdit y un browse con el
lFilterBar a .t.
Me he dado cuenta de que cuando pincho en el filtro del browse no se dispara
el evento onExit del Edit.
lo utilizo para saber en qué control estoy antes de entrar en el browse,
de tal forma que al hacer doble click en el browse pueda retroceder al control
en el que me encotraba. Me funciona bien cuando pincho directamente sobre
una lí­nea del browse, pero si primero hago una búsqueda mediante la barra
de filtro me da un error, ya que al no ejecutarse el onExit (que sólo tiene
la lí­nea ::prevcontrol := osender) , ::prevcontrol está a nil.
Un saludico,
Fredy
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5718
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

los TdbBrowse con lFilterBar y el evento on exit

Mensaje por jfgimenez »

Fredy,
> lo utilizo para saber en qué control estoy antes de entrar en el browse,
> de tal forma que al hacer doble click en el browse pueda retroceder al
> control en el que me encotraba. Me funciona bien cuando pincho
> directamente sobre una línea del browse, pero si primero hago una búsqueda
> mediante la barra de filtro me da un error, ya que al no ejecutarse el
> onExit (que sólo tiene la línea ::prevcontrol := osender) , ::prevcontrol
> está a nil.
Por favor, haz una pequeña prueba: donde compruebas ::prevcontrol, pon lo
siguiente:
IF ::prevcontrol == Nil
::prevcontrol := GetControlFromHandle( GetFocus() )
LogDebug( ::prevcontrol:ClassName )
ENDIF
y dime lo que sale en la ventana de debug.
--
Un saludo,
José F. Giménez
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
Fredy
Mensajes: 199
Registrado: Mié Mar 29, 2006 1:28 am

los TdbBrowse con lFilterBar y el evento on exit

Mensaje por Fredy »

Hola,
Me dice que es un TDBBrowse
el error lo da en la lí­nea
::PrevControl:Value := AllTrim( Str( ::oContactos:Codigo ) )
::PrevControl:SetFocus()
Un saludico,
Fredy
> Fredy,
>
>> lo utilizo para saber en qué control estoy antes de entrar en el
>> browse, de tal forma que al hacer doble click en el browse pueda
>> retroceder al control en el que me encotraba. Me funciona bien cuando
>> pincho directamente sobre una lí­nea del browse, pero si primero hago
>> una búsqueda mediante la barra de filtro me da un error, ya que al no
>> ejecutarse el onExit (que sólo tiene la lí­nea ::prevcontrol :=
>> osender) , ::prevcontrol está a nil.
>>
> Por favor, haz una pequeña prueba: donde compruebas ::prevcontrol, pon
> lo siguiente:
>
> IF ::prevcontrol == Nil
> ::prevcontrol := GetControlFromHandle( GetFocus() )
> LogDebug( ::prevcontrol:ClassName )
> ENDIF
> y dime lo que sale en la ventana de debug.
>
> José F. Giménez
>
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5718
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

los TdbBrowse con lFilterBar y el evento on exit

Mensaje por jfgimenez »

Fredy,
> Me dice que es un TDBBrowse
>
> el error lo da en la línea
> ::PrevControl:Value := AllTrim( Str( ::oContactos:Codigo ) )
> ::PrevControl:SetFocus()
Ok. Gracias. Ya sabemos porque pasa. Esta tarde intentaré corregirlo.
--
Un saludo,
José F. Giménez
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
Responder