El que no pase por el método KeyChar me afecta en el siguiente caso:
Tengo un cuadro de dialogo (oDlg1)
Dentro de este incrusto otro cuadro de dialogo (oDlg2) en el que hay varios get's.
al pulsar TAB o INTRO avanzaba entre los get's de dialogo (oDlg2), avanzaba porque del salto se encargaba el método KeyChar de la clase TGet.
Ahora el método GoNextCtrl que se ejecuta es el que le corresponde a dialogo (oDlg1) y al pulsar tab salta al siguiente get del dialogo (oDlg1)
No se si me he explicado bien, de todas formas lo he podido solucionar de esta forma:
METHOD GoNextCtrl( hCtrl ) CLASS TWindow
local hCtlNext, nAt
if oWndFromhWnd( hCtrl ):oWnd:hWnd <> ::hWnd
return oWndFromhWnd( hCtrl ):oWnd:GoNextCtrl( hCtrl )
endif
...
"hCtrl" corresponde al valor del Get pero "::hWnd" corresponde al dialogo oDlg1