FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Problema con Escape en folder
Posts: 92
Joined: Fri Nov 18, 2005 11:15 PM
Problema con Escape en folder
Posted: Thu Apr 20, 2006 02:18 PM
Tengo un problema que aparece solo al compilar con FWH (2.7) y xHb (0995). En mi aplicacion con Clipper 5.3b funciona normal:

Tengo un Dialogo con un folder de 2 pestañas, en la primera pestaña tengo un browse, en la que defino que al presionar la tecla escape, se cierre el dialogo. Todo normal en Clipper, pero con xHb no se cierra el dialogo. Les paso una porcion del codigo para ver si alguien me puede explicar que puede estar pasando?

    DEFINE DIALOG oDlg RESOURCE "Regvent" FONT oFont ;
           TITLE "Registro de Ventas" OF oWndMain:oWndclient

    REDEFINE FOLDER oFld ID 5000 OF oDlg     ;
      PROMPT ("Relacion de Comprobantes","Detalle del Comprobante") ;
      DIALOGS "regvent0","regvent1"
  
    ......

    REDEFINE BROWSE oBrwVenta GRID ;
           ID 301 OF oFld:aDialogs[1] ALIAS "REGV"

    ADD COLUMN TO oBrwVenta ;
        DATA REGV->CODVEN ;
        HEAD '#Operac' SIZE 65
     ........


    oBrwVenta:bKeyDown  := { | nKey | CaptKey1(nKey, oBrwVenta) }

  ....

       ACTIVATE DIALOG oDlg 

return nil

Static Function CaptKey1(nKey, oBrw)
local nRegistro, InsArchivo, wCuenta

DO CASE
   CASE nKey == VK_INSERT
        zIsNuevo := .T.
        oFld:SetOption(2)
   CASE nKey==VK_RETURN
        zIsNuevo := .F.
        oFld:SetOption(2)
   CASE nKey==VK_ESCAPE
        tone(500,1)  // esto si se ejecuta
        oBrw:oWnd:End()  //  <-------------esto no se ejecuta 
ENDCASE
Return NIL


Agradezco su ayuda

Ralph
Ralph del Castillo

Lima PERU

Fwh 24.07, xHb123_10193, MySQL 8.x, BCC 7.3
Posts: 234
Joined: Tue Oct 25, 2005 12:39 AM
Re: Problema con Escape en folder
Posted: Thu Apr 20, 2006 03:10 PM

Ralph,

prueba a pasar el oDlg a la función:

oBrwVenta:bKeyDown := { | nKey | CaptKey1(nKey, oBrwVenta, oDlg) }

CASE nKey==VK_ESCAPE
tone(500,1) // esto si se ejecuta
//oBrw:oWnd:End()
oDlg:End()

Posts: 92
Joined: Fri Nov 18, 2005 11:15 PM
Problema con Escape en folder
Posted: Thu Apr 20, 2006 03:13 PM

Probando encontre que si sustituyo
oBrw:oWnd:End()

con esta linea:
oBrw:oWnd:oWnd:oWnd:End()

ya se cierra el dialogo. Pero creo que mejor paso el oDlg como parametro. Gracias por tu respuesta.

Ralph

Ralph del Castillo

Lima PERU

Fwh 24.07, xHb123_10193, MySQL 8.x, BCC 7.3

Continue the discussion