Page 1 of 1

Tab, Shift Tab, ESC under a page (in memo)

Posted: Wed Nov 09, 2005 12:05 pm
by Maurilio Viana
Antonio,

I use a dialogs with 3 pages (TPages class), in a page I use a memo get, when this memo get focused, the keys Tab, Shift Tab, ESC... don't work properly.
ESC = don't work
Tab and Shift Tab = include a tab space in the text before skip to next/prior control...

Regards,
Maurilio

Posted: Fri Nov 11, 2005 10:13 am
by Antonio Linares
Maurilio,

Please include these changes in source\classes\mget.prg Method KeyChar:

if nKey == VK_ESCAPE // Windows API already sends it to dialogs!!!
if ::oWnd:ChildLevel( TDialog() ) != 0 .and. ::oWnd:lModal
return nil
endif
if ::oWnd:ChildLevel( TDialog() ) != 0 .and. ::oWnd:oWnd != nil .and. ;
::oWnd:oWnd:ChildLevel( TPages() ) != 0
::oWnd:oWnd:oWnd:End()
endif
endif

if nKey == VK_TAB
return Super:KeyChar( nKey, nFlags )
endif

Posted: Fri Nov 11, 2005 10:50 am
by Maurilio Viana
Did and working fine!

Thanks a lot, Antonio

Regards,
Maurilio

Posted: Mon Nov 14, 2005 5:44 am
by goosfancito
Antonio, leyendo este y otros comentarios con respectos a otros prg, como el windows.prg para la parte de tooltips con corners redondos necesito proguntarte esto:

Para no tener que aƱadir tanto windows.prg y mget.prg en los proyectos, estos pueden re-compilarse asi no tengo que incluirlos?

Gracias.
Antonio Linares wrote:Maurilio,

Please include these changes in source\classes\mget.prg Method KeyChar:

if nKey == VK_ESCAPE // Windows API already sends it to dialogs!!!
if ::oWnd:ChildLevel( TDialog() ) != 0 .and. ::oWnd:lModal
return nil
endif
if ::oWnd:ChildLevel( TDialog() ) != 0 .and. ::oWnd:oWnd != nil .and. ;
::oWnd:oWnd:ChildLevel( TPages() ) != 0
::oWnd:oWnd:oWnd:End()
endif
endif

if nKey == VK_TAB
return Super:KeyChar( nKey, nFlags )
endif