Página 1 de 1

TFolder camiando páginas por teclado mediante ShortCut

Publicado: Mié Sep 19, 2007 7:54 pm
por Xavi[1]
Al cambiar de FolderPage mediante el mouse el control lo recibe correctamente el primer control de la página activa pero si el
cambio se realiza por el teclado "Alt+Key" mediante ShortCut sigue en el control de la anterior página, aún forzándolo en OnShow
de la página que activamos. Espero que alguien más pueda confirmar esto.
He conseguido solventarlo remarcando virtualmente el ::SetFocus() del METHOD Click( cKey ) CLASS XTabCtrl de la librerí­a pero no
sé si esta es la solución.
CLASS TTabCtrl FROM XTabCtrl
METHOD Click( cKey )
ENDCLASS
METHOD Click( cKey ) CLASS TTabCtrl
LOCAL n, nAt, lChange
IF ! Empty( cKey )
cKey := Upper( cKey )
FOR n := 1 TO Len( ::aItems )
IF ( nAt := At( "&", ::aItems[ n ]:cText ) ) > 0 .AND. Upper( Substr( ::aItems[ n ]:cText, nAt + 1, 1 ) ) == cKey
IF n != ::nIndex
IF ( lChange := ::Changing( n, ::nIndex ) ) == Nil .OR. lChange
::SetIndex( n, .T. )
// tabCtrl.prg(426)
// ::SetFocus()
LogDebug('Ok ???')
ENDIF
ENDIF
EXIT
ENDIF
NEXT
ENDIF
RETURN Nil
Un saludo
Xavi

TFolder camiando páginas por teclado mediante ShortCut

Publicado: Mié Sep 19, 2007 8:05 pm
por jfgimenez
Xavi,
> Al cambiar de FolderPage mediante el mouse el control lo recibe
> correctamente el primer control de la página activa pero si el cambio se
> realiza por el teclado "Alt+Key" mediante ShortCut sigue en el control de
> la anterior página, aún forzándolo en OnShow de la página que activamos.
> Espero que alguien más pueda confirmar esto.
> He conseguido solventarlo remarcando virtualmente el ::SetFocus() del
> METHOD Click( cKey ) CLASS XTabCtrl de la librería pero no sé si esta es
> la solución.
A primera vista, sí, parece que es lo correcto. Gracias, vamos a corregirlo
nosotros también.
--
Un saludo,
José F. Giménez
http://www.xailer.com
http://www.xailer.info