FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Ayuda con Hotkeys
Posts: 1380
Joined: Fri Oct 14, 2005 01:28 PM
Ayuda con Hotkeys
Posted: Tue Nov 01, 2005 12:58 AM

Buenas...

Desde un Dialog hago lo siguiente

...

ACTIVATE DIALOG oDlg ;
ON INIT ( oSelf:BarraFac() , ;
oSelf:ActivaKeys() )

El metodo ::BarraFac() carga una barra de botones definidos con TSButtons; luego ::Activakeys() es un metodo que asigna procesos a teclas de funcion, segun una condici贸n, de la siguiente manera:

if ::lNueva
::aFunKeys[_F2] := SetKey( VK_F2, {|| ::aoBar[_BNewF]:KeyDown( VK_RETURN ) }) ; ::aoBar[_BNewF]:Show()
SetKey( VK_F3, ::aFunKeys[_F3] ) ; ::aoBar[_BFactu]:Hide()
::aFunKeys[_F6] := SetKey( VK_F6, {|| ::aoBar[_BLista]:KeyDown( VK_RETURN ) }) ; ::aoBar[_BLista]:Show()
else
SetKey( VK_F2, ::aFunKeys[_F2] ) ; ::aoBar[_BNewF]:Hide()
::aFunKeys[_F3] := SetKey( VK_F3, {|| ::aoBar[_BFactu]:KeyDown( VK_RETURN ) }) ; ::aoBar[_BFactu]:Show()
SetKey( VK_F6, ::aFunKeys[_F6] ) ; ::aoBar[_BLista]:Hide()
end

::aoBar, como se observa, es un array de los objetos botones y seg煤n se cumpla la condici贸n algunos se muestran y otros se ocultan, para que en el caso falso ocurra lo contrario.

hasta aqu铆 todo se ejecuta correctamente salvo que... cuando lanzo la app si pulso cualquiera de las teclas de funcion redefinidas, y visibles, no responde a la puslaci贸n, pero; si hago clic sobre cualquiera de los botones visibles, a posteriori puedo pulsar sobre cualquiera de las teclas de funci贸n para que respondan; o sea, evidentemente se est谩n asignando luego de que se produzca el promer evento desde un boton de la barra de botones a trav茅s del clic de mouse.
Espero me entiendan. Si es as铆 pregunto: que debo hacer para que al desplegarse el Dialog de la app el usuario pueda usar las teclas redefinidas de primera instancia?
Aclaro: Necesariamente ::ActivaKeys() debe estar despues de ::BarraFac porque es all铆 donde se asignan los objetos botones.

muchas gracias
Mario

Resistencia - "Ciudad de las Esculturas"

Chaco - Argentina
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Ayuda con Hotkeys
Posted: Wed Nov 02, 2005 12:30 PM

Mario,

Prueba a darle el foco a uno de los botones desde la cla煤sula ON INIT del di谩logo:

ACTIVATE DIALOG oDlg ;
ON INIT ..., oBoton1:SetFocus()

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1380
Joined: Fri Oct 14, 2005 01:28 PM
Ayuda con Hotkeys
Posted: Thu Nov 03, 2005 12:30 PM

gracias Antonio, fue la soluci贸n

saludos

Resistencia - "Ciudad de las Esculturas"

Chaco - Argentina

Continue the discussion