ESC na TxBrowse

ESC na TxBrowse

Postby Ari » Wed Jul 19, 2006 12:24 pm

estou usando o oBrw:bkeyDown na TxBrowse e não tá pegando a Tecla ESC

Ari
User avatar
Ari
 
Posts: 228
Joined: Fri Feb 03, 2006 4:21 pm
Location: São Paulo, SP - Brazil

Re: ESC na TxBrowse

Postby Maurilio Viana » Wed Jul 19, 2006 4:20 pm

Ari, como é seu código pra testar isso?

Maurilio
User avatar
Maurilio Viana
 
Posts: 252
Joined: Tue Oct 25, 2005 2:48 pm
Location: Garça/Garza/Heron City - Brazil

Postby Ari » Wed Jul 19, 2006 4:30 pm

::oBrw:bKeyDown := {| nKey | ::Key( nKey ) }


method key( nKey ) CLASS myCLASS

if nKey == 27
... aqui nao passa
Elseif nKey == 32
... aqui ok
Elseif nKey == 12
... aqui ok
Endif

return nil
User avatar
Ari
 
Posts: 228
Joined: Fri Feb 03, 2006 4:21 pm
Location: São Paulo, SP - Brazil

Postby Maurilio Viana » Wed Jul 19, 2006 5:41 pm

Deveria funcionar, troque o 27 por VK_ESC (ou VK_ESCAPE, não me recordo direito...)

Ou inclua uma msgalert para mostrar qual tecla ele esta pegando quando vc tecla ESC:

method key( nKey ) CLASS myCLASS
msgalert( nKey ) <======
if nKey == 27
...

[ ]'s
Maurilio
User avatar
Maurilio Viana
 
Posts: 252
Joined: Tue Oct 25, 2005 2:48 pm
Location: Garça/Garza/Heron City - Brazil

Postby Ari » Thu Jul 20, 2006 4:46 pm

eu coloquei o alert, o bkeyDown não captura o ESC, nem passa no ::Key()


:roll:
Ari
User avatar
Ari
 
Posts: 228
Joined: Fri Feb 03, 2006 4:21 pm
Location: São Paulo, SP - Brazil

Postby Antonio Linares » Thu Jul 20, 2006 4:49 pm

Try bKeyChar
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42079
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Ayuda con bkeychar en txbrowse

Postby carlos vargas » Thu Jul 26, 2007 5:09 pm

Amigos, me urge una ayuda con el bKeyChar de TxBrowse, estoy pasando de usar twbrowse a txbrowse, pero el bKeyChar no me funciona.

aca el codigo, si funciona sin problemas el bKeyDown

antes con el twbrose sin problemas..

esta funcion permite que estando en un browse el usuario presione una tecla en inmediatamente le aparece un cado capturando las siguientes pulsaciones para efectos de busqueda.

Code: Select all  Expand view
    WITH OBJECT ( oBrw := TXBrowse():new( oDlg ) )
        :CreateFromResource( 101 )
        :cAlias                 := "CONT"
        :nColDividerStyle       := LINESTYLE_DARKGRAY
        :lColDividerComplete    := TRUE
        :nMarqueeStyle          := MARQSTYLE_HIGHLROW
        :lAllowRowSizing        := FALSE
        :lRecordSelector        := TRUE
        :nHeaderHeight          := 30
        :bClrHeader             := { || { CLR_BLUE, GetSysColor( COLOR_BTNFACE ) } }
        :bLDblClick             := { || Contratos_Editar(FALSE) }
        :bKeyChar               := { |nKey| Msginfo(nKey),Browse_OnKeyCharPress(nKey,TRUE,oBrw) }
        :bKeyDown               := { |nKey| Msginfo(nKey),Contratos_ProcesarTecla(nKey)}
        :nFreeze                := 3
        :lFooter                := TRUE

        /*redefine columnas del browse*/
        WITH OBJECT ( oCol := :AddCol() )
            :cHeader       := "Contrato No."
            :bStrData      := {|| CONT->MC_CODCON }
            :nWidth        := 90
        END


Code: Select all  Expand view
PROCEDURE Browse_OnKeyCharPress(nKey,lUpperSeek,oBrw)
    LOCAL oGet
    LOCAL cGet
    LOCAL oDlgS
    LOCAL cChar
    LOCAL lOldSeek := SET( _SET_SOFTSEEK, TRUE )

    DEFAULT lUpperSeek := TRUE

    IF nKey < 32
        RETURN
    ENDIF

    IF lUpperSeek
        cGet := PadR( Upper( Chr(nKey) ),30 )
    ELSE
        cGet := PadR( Chr(nKey), 30 )
    ENDIF

    DEFINE DIALOG oDlgS NAME "DLG_BUSCAR" OF oDlg

    REDEFINE GET oGet VAR cGet ID 101 OF oDlgS
    REDEFINE BUTTONBMP         ID 201 OF oDlgS BITMAP "SBOK" ACTION Browse_Buscar( cGet, oDlgS, oBrw )

    oGet:cPicture := iif( lUpperSeek, "@!", NIL )

    ACTIVATE DIALOG oDlgS ON INIT oGet:SetPos(2)

    SET( _SET_SOFTSEEK, lOldSeek )

RETURN


Code: Select all  Expand view
PROCEDURE Browse_Buscar( cGet, oDlgS, oBrw )
    LOCAL nRecno := (oBrw:cAlias)->( RecNo() )

    cGet := RTrim( cGet )

    IF !Empty( cGet )
        IF !(oBrw:cAlias)->( DBSeek( cGet ) )
            (oBrw:cAlias)->( DBGoTo( nRecno ) )
        ENDIF
        oBrw:refresh()
        Tone( 600, 3 )
    ENDIF

   oDlgS:end()

RETURN
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
User avatar
carlos vargas
 
Posts: 1719
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua


Return to FiveWin for Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 52 guests