Page 1 of 1
Como evito que se cierre un dialogo al presionar <Escape&
Posted: Mon Apr 24, 2006 1:33 am
by José Ríos
Hola colegas.
Necesito desactivar el cierre de un dialogo cuando se presiona la tecla <Escape>. ¿Alguien sabe como hacerlo?.
Uso FWH 2.4 y Xharbour 0.99.3.
De antemano muchas gracias.
Jose Ríos.
Posted: Mon Apr 24, 2006 2:58 am
by lafug
José, condiciona la salida del dialogo con una variable
local lSale :=.f.
local oDlg
DEFINE DIALOG oDlg RESOURCE "ODLG_FACTURA" TITLE "mi dialogo"
REDEFINE BTNBMP oB311 ID 311 RESOURCE "SALIR" OF oDlg ACTION (lSale:=.t., oDlg:end());
ACTIVATE DIALOG oDlg VALID lSale
Posted: Mon Apr 24, 2006 7:07 pm
by manuramos
Yo personalmente utilizo la funcion:
FUNCTION _()
RETURN !( GetKeyStat( 27 ) )
Y la llamo desde un valid del dialogo:
DEFINE DIALOG oDlg .....
...
...
ACTIVATE oDlg VALID _()
Observa que la función devuelve .T. cuando no se ha pulsado Escape. Por si quieres utilizarlo en conjunción con otras funciones. Por ejemplo
VALID _() .AND. MiFuncion(...)
Posted: Tue Apr 25, 2006 8:01 pm
by José Ríos
Muchas gracias por los tips, me han sido muy utiles.
Saludos.
Jose Rios.