Problemas con captura de eventos

You can share your experience with HMG. Share with some screenshots/project details so that others will also be benefited.

Moderator: Rathinagiri

User avatar
luisvasquezcl
Posts: 1258
Joined: Thu Jul 31, 2008 3:23 am
Location: Chile
Contact:

Problemas con captura de eventos

Post by luisvasquezcl »

Estimado Roberto,
estoy tratando de capturar el evento enter para un combobox conectado a ado pero no hace nada.
El codigo inicial es:

Init Procedure _ComboAdo
*------------------------------------------------------------------------------*
InstallEventHandler ( 'ComboAdoEventHandler' )
InstallMethodHandler ( 'Refresh' , '_DataComboRefreshAdo' )
InstallMethodHandler ( 'Value' , '_GetValueAdo' )
InstallMethodHandler ( 'Change' , '_ChangeAdo' )
InstallMethodHandler ( 'Enter' , '_EnterAdo' )
Return

La funcion ComboadoEventHandler resumida es:

Function ComboAdoEventHandler( hWnd, nMsg, wParam, lParam )

if nMsg = WM_COMMAND

i = Ascan( _HMG_SYSDATA[3], GetFocus() )

IF i > 0
if _HMG_SYSDATA [1] = "COMBOADO" .and. ( HiWord(wParam) == 0 .And. LoWord(wParam) == 1 )
_DoControlEventProcedure ( _HMG_SYSDATA [ 16 ] , i )
If _HMG_SYSDATA [ 255 ] == .T.
_SetNextFocus()
EndIf
Return 0
EndIf

ENDIF
endif

Los eventos Gotfocus, Lostfocus, Change funcionan bien pero el enter no.
Podrias indicarme cual es mi error?
Saludos cordiales
Luis Vasquez
User avatar
Roberto Lopez
HMG Founder
Posts: 4004
Joined: Wed Jul 30, 2008 6:43 pm

Re: Problemas con captura de eventos

Post by Roberto Lopez »

Luis,

Por favor, adjunta el código completo ya que, de esa forma va a ser más fácil para mi, detectar el problema.

Gracias,

Saludos,

Roberto.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)
User avatar
luisvasquezcl
Posts: 1258
Joined: Thu Jul 31, 2008 3:23 am
Location: Chile
Contact:

Re: Problemas con captura de eventos

Post by luisvasquezcl »

Te adjunto el .prg.
Attachments
Combo_ado.zip
(57.67 KiB) Downloaded 547 times
User avatar
Roberto Lopez
HMG Founder
Posts: 4004
Joined: Wed Jul 30, 2008 6:43 pm

Re: Problemas con captura de eventos

Post by Roberto Lopez »

luisvasquezcl wrote:Te adjunto el .prg.
Luis,

No encuentro el código que describiste en el mensaje anterior en el adjunto.

De todas formas, con respecto a tu pregunta, la función 'Events' en el archvo 'h_windows.prg' te muestra como manejar los eventos de todos los controles que incluye HMG.

De acuerdo al código en tu mensaje, en principio parece correcto.

Saludos,

Roberto.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)
User avatar
Roberto Lopez
HMG Founder
Posts: 4004
Joined: Wed Jul 30, 2008 6:43 pm

Re: Problemas con captura de eventos

Post by Roberto Lopez »

luisvasquezcl wrote:Te adjunto el .prg.
Dos cosas más:

1. Persiste el error que se produce al ingresar una fecha incorrecta:

Error BASE/1118 Argument error: DTOC</p><BR>
Called from DTOC(0)
Called from _SETITEM(1568)
Called from _HMG_SETGRIDCELLVALUE(1100)
Called from _HMG_GRIDINPLACEEDITOK(876)
Called from (b)_HMG_GRIDINPLACEEDIT(610)
Called from _DOCONTROLEVENTPROCEDURE(4383)
Called from EVENTS(467)
...

2. Deberías usar nombres de función diferentes a los que usa HMG.

Saludos,

Roberto.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)
User avatar
luisvasquezcl
Posts: 1258
Joined: Thu Jul 31, 2008 3:23 am
Location: Chile
Contact:

Re: Problemas con captura de eventos

Post by luisvasquezcl »

Estimado Roberto,
El error del gridado ya lo tengo solucionado asi que en la proxima versión ya no volverá a aparecer, incluso estuve probando con otros casos como son los campos calculados y funciona muy bien, a lo cual adjuntaré un ejemplo.
Para el comboado, copié los eventos desde el h_windows.prg que tienen relación con el combo y como te decia funcionan todos los que implementé excepto el enter; me da la impresiòn que el problema es que la funcion GetFocus() no está reconociendo el control ya que no encuentra el handle, es un poco frustrante pero ya me metí en esto y quiero terminarlo.
Respecto a usar distintos nombres en los eventos pensé que no era correcto ya que la idea es que sea transparente para el usuario usar un control de la libreria oficial o usar otro aportado. De todas formas si te parece que lo correcto es ponerle otro nombre lo haré, no quiero causar problemas con esto.
Ojalá pueda llegar a buen puerto con esto ya que me gustaría tener controles especializados para trabajar con sql.
Bueno, gracias por tu reporte de error.
Cordialmente,
Luis Vásquez.

PD. Si alguien quiere hacer su aporte estaré muy agradecido.

ENGLISH BY GOOGLE

Dear Roberto,
The error of the grid and so I have settled in the next version will no longer appear, even I was trying cases as other fields are calculated and works very well, to which we attach an example.
For the combo, copied from h_windows.prg events that relate to the combo and as I mentioned earlier that operate all implemented except enter; gives me the impresiòn that the problem is that the function GetFocus () is not recognizing control since it can not find the handle is a bit frustrating but I metí in this and I want to finish it.
With regard to use different names in the events I thought that was not correct because the idea is that is transparent to the user to use a control officer or use the library made another. Anyway if you think that the right thing to do is put another name I will not want to cause problems with this.
Hopefully can come to fruition with this because I would have to work with specialized controls sql.
Well, thank you for your reporting error.
Sincerely,
Luis Vasquez.

PD. If someone wants to make its contribution will be very grateful.
User avatar
luisvasquezcl
Posts: 1258
Joined: Thu Jul 31, 2008 3:23 am
Location: Chile
Contact:

Re: Problemas con captura de eventos

Post by luisvasquezcl »

Estimado Roberto,
Aun sigo con problemas con la captura de la tecla enter. Parece no encontrarla dentro del array HMG_SYSDATA.
Te agradecería tu ayuda. Adjunto los fuentes.
Cordialmente,
Luis Vasquez
Attachments
Combo_ado.zip
(59.26 KiB) Downloaded 543 times
User avatar
Roberto Lopez
HMG Founder
Posts: 4004
Joined: Wed Jul 30, 2008 6:43 pm

Re: Problemas con captura de eventos

Post by Roberto Lopez »

luisvasquezcl wrote:Estimado Roberto,
Aun sigo con problemas con la captura de la tecla enter. Parece no encontrarla dentro del array HMG_SYSDATA.
Te agradecería tu ayuda. Adjunto los fuentes.
Cordialmente,
Luis Vasquez
Lo he bajado. En cuanto encuentre el problema, te aviso.

Saludos,

Roberto.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)
User avatar
Roberto Lopez
HMG Founder
Posts: 4004
Joined: Wed Jul 30, 2008 6:43 pm

Re: Problemas con captura de eventos

Post by Roberto Lopez »

luisvasquezcl wrote:Estimado Roberto,
Aun sigo con problemas con la captura de la tecla enter. Parece no encontrarla dentro del array HMG_SYSDATA.
Te agradecería tu ayuda. Adjunto los fuentes.
Cordialmente,
Luis Vasquez
El problema no está en tu código sino en HMG.

Acabo de descubrir que el evento 'OnEnter' no funciona en combos con imagen... :(

En cuanto lo solucione, publicaré el fix.

Saludos,

Roberto.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)
User avatar
Roberto Lopez
HMG Founder
Posts: 4004
Joined: Wed Jul 30, 2008 6:43 pm

Re: Problemas con captura de eventos

Post by Roberto Lopez »

Roberto Lopez wrote:
luisvasquezcl wrote:Estimado Roberto,
Aun sigo con problemas con la captura de la tecla enter. Parece no encontrarla dentro del array HMG_SYSDATA.
Te agradecería tu ayuda. Adjunto los fuentes.
Cordialmente,
Luis Vasquez
El problema no está en tu código sino en HMG.

Acabo de descubrir que el evento 'OnEnter' no funciona en combos con imagen... :(

En cuanto lo solucione, publicaré el fix.

Saludos,

Roberto.
Ya encontré la solución al problema, pero es un poco compleja y requiere demasiados cambios como para detallarlos aquí.

En los próximos días publicaré el fix.

Saludos,

Roberto.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)
Post Reply