FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour SetDialogEsc falla con dialogo con boton con clausula cancel
Posts: 1789
Joined: Tue Oct 11, 2005 05:01 PM
SetDialogEsc falla con dialogo con boton con clausula cancel
Posted: Fri Sep 04, 2015 06:04 PM

Antonio,

cuando se usa la funcion SetDialogEsc( .F. ) para evitar que presionando escape se cierre el dialogo funciona bien siempre y cuando el dialogo no tenga un boton con la clausula CANCEL, de ser asi, el dialogo se cierra, sin importar el estado de SetDialogEsc.

salu2
carlos vargas

Salu2

Carlos Vargas

Desde Managua, Nicaragua (CA)
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: SetDialogEsc falla con dialogo con boton con clausula cancel
Posted: Fri Sep 04, 2015 06:53 PM
Code (fw): Select all Collapse
#include "FiveWin.ch"

STATIC lSalir := .F.

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 ) ) }

   @ 3,   10 BUTTON "&Salir" OF oDlg SIZE 30, 12 ;
             ACTION ( lSalir := .T., oDlg:End() ) CANCEL

   ACTIVATE DIALOG oDlg CENTERED ;
            VALID( lSalir )

return nil


Jo茫o Santos - S茫o Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: SetDialogEsc falla con dialogo con boton con clausula cancel
Posted: Sat Sep 05, 2015 07:10 AM

Carlos,

El ejemplo de Joao funciona bien, te sirve as铆 ?

Gracias Joao :-)

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 476
Joined: Sat Feb 03, 2007 06:36 AM
Re: SetDialogEsc falla con dialogo con boton con clausula cancel
Posted: Sat Sep 05, 2015 12:36 PM
Tocayo, esta seria otra forma de hacerlo.
Saludos.

Carlos.

Code (fw): Select all Collapse
...---------
DEFINE DIALOG oDlg TITLE "Prueba Dialogo Esc"
聽 聽
聽 聽@ 2, 2 GET cTest OF oDlg

聽 聽@ 3, 聽 10 BUTTON "Saldar" OF oDlg SIZE 30, 12 
聽 聽 聽 聽 聽 聽 聽ACTION 聽oDlg:End() 聽CANCEL

聽 聽ACTIVATE DIALOG oDlg CENTERED ;
聽 聽 聽 聽 聽 聽 VALID Salida()

return nil

//-------------------------------------------------------------------------------------------------------------------
FUNCTION Salida( lEsc, lAsk, cMsg ) 

DEFAULT lEsc := .f., lAsk := .f., cMsg := ""

聽 聽if getkeystate( VK_ESCAPE ) 
聽 聽 聽 Return( lEsc )
聽 聽endif 
聽 聽
聽 聽If lAsk
聽 聽 聽 If Empty( cMsg )
聽 聽 聽 聽 聽cMsg := "Desea Salir de Este Proceso...?"
聽 聽 聽 End
聽 聽 聽 If !MsgNoyes(cMsg,"Confirme por Favor...")
聽 聽 聽 聽 聽Return .f.
聽 聽 聽 End
聽 聽End

return .T.
Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM
Re: SetDialogEsc falla con dialogo con boton con clausula cancel
Posted: Sat Sep 05, 2015 04:56 PM
Carlos, te pongo como lo hago y me funciona al pelo y uso lCancel en un boton, saludos... :-)

Code (fw): Select all Collapse
聽 聽REDEFINE BUTTONBMP aBtn[3] ID 203 OF oDlg ; // CALCELAR
聽 聽 聽 ACTION IIF( MsgNoYes( "Seguro Desea Salir/Cancelar Inscripci贸n.?", oDatos:cTitMsg ) ,;
聽 聽 聽 聽 聽oDlg:END(), ( aBtn[3]:SetFocus(), aBtn[3]:REFRESH() ) ) ;
聽 聽 聽 BITMAP "cancel16" TEXTRIGHT

聽 聽aBtn[3]:lCancel := .t.

聽 聽ACTIVATE DIALOG oDlg CENTER ;
聽 聽 聽 ON INIT( IIF( lNew ,;
聽 聽 聽 聽 聽( oGetFchIng:SetFocus(), oGetFchIng:REFRESH() ) ,;
聽 聽 聽 聽 聽( aGet[3]:SetFocus(), aGet[3]:REFRESH() ) ) ) ;
聽 聽 聽 VALID( !GETKEYSTATE( VK_ESCAPE ) )
Dios no est谩 muerto...



Gracias a mi Dios ante todo!
Posts: 1789
Joined: Tue Oct 11, 2005 05:01 PM
Re: SetDialogEsc falla con dialogo con boton con clausula cancel
Posted: Sat Sep 05, 2015 08:38 PM

Antonio, si funciona bien el ejemplo de Joao,
pero creo que seria mas adecuado incluirlo en tdialog, validar el resultado de SetDialogEsc() y permitir la salida,
revisare el codigo para ver si doy con el lugar correcto, ya les informare.

salu2
carlos vargas

Salu2

Carlos Vargas

Desde Managua, Nicaragua (CA)
Posts: 1054
Joined: Sun Oct 09, 2005 10:41 PM
Re: SetDialogEsc falla con dialogo con boton con clausula cancel
Posted: Mon Sep 07, 2015 03:23 AM
Amigos,,, baje el FIVEDIT y salio un error al cerrar el nuevo proyecto con el click derecho
http://kn3.net/464B48BDD8DJPG.html
Posts: 6755
Joined: Wed Feb 15, 2012 08:25 PM
Re: SetDialogEsc falla con dialogo con boton con clausula cancel
Posted: Mon Sep 07, 2015 05:37 AM
Willi Quintana wrote:Amigos,,, baje el FIVEDIT y salio un error al cerrar el nuevo proyecto con el click derecho
http://kn3.net/464B48BDD8DJPG.html


Willi, los proyectos aun no se han empezado a desarrollar
De todas formas, explica un poco m谩s qu茅 pasos diste para que saltara el error
Gracias

-------------------------- EDITADO ---------------------------
Gracias Willi, ya lo he visto
Estoy en ello
Cristobal Navarro

Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noci贸n del tiempo

El secreto de la felicidad no est谩 en hacer lo que te gusta, sino en que te guste lo que haces
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: SetDialogEsc falla con dialogo con boton con clausula cancel
Posted: Mon Sep 07, 2015 08:13 AM

Willy,

En la versi贸n de Fivedit que esta en FWH\samples los proyectos funcionan correctamente.

Solo tienes que ir a FWH\samples y hacer:

buildh.bat fivedit

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 6755
Joined: Wed Feb 15, 2012 08:25 PM
Re: SetDialogEsc falla con dialogo con boton con clausula cancel
Posted: Mon Sep 07, 2015 11:17 AM
Willi Quintana wrote:Amigos,,, baje el FIVEDIT y salio un error al cerrar el nuevo proyecto con el click derecho
http://kn3.net/464B48BDD8DJPG.html


Solucionado
viewtopic.php?f=6&t=24025&p=181421#p181421
Cristobal Navarro

Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noci贸n del tiempo

El secreto de la felicidad no est谩 en hacer lo que te gusta, sino en que te guste lo que haces

Continue the discussion