FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Problema Teclas en Diálogo
Posts: 458
Joined: Tue Mar 14, 2006 07:26 PM
Problema Teclas en Diálogo
Posted: Wed Oct 15, 2014 09:43 PM
Hola,

Tengo el problema de controlar las teclas pulsadas en un diálogo desde recursos.

Quiero controlar ESC, RETURN y alguna más.

Para empezar no me captura ninguna y al pulsar ESCAPE, se cierra el diálogo.

Code (fw): Select all Collapse
 SetDialogEsc(.F.)                 
    DEFINE DIALOG ::oDlg RESOURCE "FAMILIAS" FONT ::ofont COLOR CLR_BLACK, CLR_WHITE TRANSPARENT

    WITH OBJECT ::oTreeFamilias := TTreeView():REDEFINE(102, ::oDlg,CLR_BLACK,CLR_GREEN , .F. ,"" )
        :setColor( CLR_HBLUE, CLR_WHITE )
        :setFont(::oFontTree)
        :bEraseBkGnd = { || nil }  // Soluciona el fallo con Diálogos TRANSPARENT
   END

  ......

     ::oDlg:bKeyChar := {|nkey| msginfo(nKey) }
     ::oDlg:bKeyDown := {|nkey| msginfo(nKey) }
     
     ACTIVATE DIALOG ::oDlg CENTERED ON INIT ( oSelf:creaBarBtnsSelect(), oSelf:loadTree()  )



Ni muestra ninguna tecla, pulse la que pulse y se sale, ignorando SetDialogEsc(.F.)

No lo entiendo. ¿Tan dificil es que me funcione bkeydown o hay que hacer algo que se me escapa?
Un Saludo,

Joaquín Martínez
Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM
Re: Problema Teclas en Diálogo
Posted: Thu Oct 16, 2014 12:13 AM

Con esto evitas se cierre el dialog con Esc...saludos... :shock:

ACTIVATE DIALOG oDlg CENTER ;
VALID( !GETKEYSTATE( VK_ESCAPE ) )

Dios no está muerto...



Gracias a mi Dios ante todo!
Posts: 458
Joined: Tue Mar 14, 2006 07:26 PM
Re: Problema Teclas en Diálogo
Posted: Thu Oct 16, 2014 12:19 AM

Hola,
Eso ya lo sabía, pero esa no es la cuestión, es el mal funcionamiento.

Gracias,

Un Saludo,

Joaquín Martínez
Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM
Re: Problema Teclas en Diálogo
Posted: Thu Oct 16, 2014 12:30 AM
jmartial wrote:Hola,
Eso ya lo sabía, pero esa no es la cuestión, es el mal funcionamiento.


Gracias,

Intenta con esto, a mi me funciona al pelo, saludos... :-)

AEval( oDlg:aControls, {|o| o:= {|nKey| IF( nKey== VK_F5, mi_funcion(), NIL ) } } ) // PARA UNO SOLO...
AEval( oDlg:aControls, {|o| o:= {|nKey| key_funciones( nKey, { } ) } } ) // PARA VARIOS...
Dios no está muerto...



Gracias a mi Dios ante todo!
Posts: 458
Joined: Tue Mar 14, 2006 07:26 PM
Re: Problema Teclas en Diálogo
Posted: Thu Oct 16, 2014 11:45 AM

Gracias Jose Luís,

Pero eso no es lo que busco, lo que busco es saber como hacer que funcione bKeyDown, bKeyChar y setDialogEsc(.F.) en los diálogos desde recursos.

Nada de esto me funciona, y creo que no es correcto.

Un Saludo,

Joaquín Martínez
Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM
Re: Problema Teclas en Diálogo
Posted: Thu Oct 16, 2014 03:29 PM
jmartial wrote:Gracias Jose Luís,

Pero eso no es lo que busco, lo que busco es saber como hacer que funcione bKeyDown, bKeyChar y setDialogEsc(.F.) en los diálogos desde recursos.

Nada de esto me funciona, y creo que no es correcto.

Entonces no te entendi, como dijistes esto "Tengo el problema de controlar las teclas pulsadas en un diálogo desde recursos.Quiero controlar ESC, RETURN y alguna más." asumi que necesitabas pulsar cualquier tecla y ejecutar algo, de la forma que te lo envie controlo cualquier tecla pulsada, principalmente las teclas Fn...no tengo mas ideas al respecto, saludos... :-)
Dios no está muerto...



Gracias a mi Dios ante todo!
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Problema Teclas en Diálogo
Posted: Thu Oct 16, 2014 03:53 PM
Code (fw): Select all Collapse
#include "FiveWin.ch" 

function Main() 

   local oDlg, cTest := Space( 10 ) 

   SetDialogEsc( .F. )

   DEFINE DIALOG oDlg TITLE "Prueba de Teclado"
   
   @ 2, 2 GET cTest OF oDlg

   oDlg:bKeyDown = { | nKey | MsgInfo( "Minusculas.: " + Str( nKey ) ) }
   oDlg:bKeyChar = { | nKey | MsgInfo( "Mayusculas.: " + Str( nKey ) ) }

   ACTIVATE DIALOG oDlg CENTERED 

return nil


João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 458
Joined: Tue Mar 14, 2006 07:26 PM
Re: Problema Teclas en Diálogo
Posted: Thu Oct 16, 2014 04:14 PM

Jose Luis,

Puse un código de ejemplo.

¿ Has probado ese código y te funciona ? En teoría debería funcionar y a mí no me funciona. Preguntaba si a todos os pasa igual o yo estoy
haciendo algo mal.

Siento no haberme explicado con claridad.

Gracias,

Un Saludo,

Joaquín Martínez
Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM
Re: Problema Teclas en Diálogo
Posted: Thu Oct 16, 2014 04:31 PM
jmartial wrote:Jose Luis,

Puse un código de ejemplo.

¿ Has probado ese código y te funciona ? En teoría debería funcionar y a mí no me funciona. Preguntaba si a todos os pasa igual o yo estoy
haciendo algo mal.

Siento no haberme explicado con claridad.

Gracias,


El codigo lo coloco antes del ACTIVATE del DIALOG y al pulsar las teclas que valide funciona sin problemas, saludos... :-)
Dios no está muerto...



Gracias a mi Dios ante todo!

Continue the discussion