SetDialogEsc falla con dialogo con boton con clausula cancel

SetDialogEsc falla con dialogo con boton con clausula cancel

Postby carlos vargas » Fri Sep 04, 2015 6: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)
User avatar
carlos vargas
 
Posts: 1683
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua

Re: SetDialogEsc falla con dialogo con boton con clausula cancel

Postby karinha » Fri Sep 04, 2015 6:53 pm

Code: Select all  Expand view

#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
User avatar
karinha
 
Posts: 7210
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: SetDialogEsc falla con dialogo con boton con clausula cancel

Postby Antonio Linares » Sat Sep 05, 2015 7:10 am

Carlos,

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

Gracias Joao :-)
regards, saludos

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

Re: SetDialogEsc falla con dialogo con boton con clausula cancel

Postby csincuir » Sat Sep 05, 2015 12:36 pm

Tocayo, esta seria otra forma de hacerlo.
Saludos.

Carlos.

Code: Select all  Expand view

...---------
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.

 
csincuir
 
Posts: 396
Joined: Sat Feb 03, 2007 6:36 am
Location: Guatemala

Re: SetDialogEsc falla con dialogo con boton con clausula cancel

Postby joseluisysturiz » Sat Sep 05, 2015 4:56 pm

Carlos, te pongo como lo hago y me funciona al pelo y uso lCancel en un boton, saludos... :shock:

Code: Select all  Expand view

   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!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela

Re: SetDialogEsc falla con dialogo con boton con clausula cancel

Postby carlos vargas » Sat Sep 05, 2015 8: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)
User avatar
carlos vargas
 
Posts: 1683
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua

Re: SetDialogEsc falla con dialogo con boton con clausula cancel

Postby Willi Quintana » Mon Sep 07, 2015 3:23 am

Amigos,,, baje el FIVEDIT y salio un error al cerrar el nuevo proyecto con el click derecho
http://kn3.net/464B48BDD8DJPG.html
User avatar
Willi Quintana
 
Posts: 1002
Joined: Sun Oct 09, 2005 10:41 pm
Location: Cusco - Perú

Re: SetDialogEsc falla con dialogo con boton con clausula cancel

Postby cnavarro » Mon Sep 07, 2015 5: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
User avatar
cnavarro
 
Posts: 6500
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: SetDialogEsc falla con dialogo con boton con clausula cancel

Postby Antonio Linares » Mon Sep 07, 2015 8: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
User avatar
Antonio Linares
Site Admin
 
Posts: 41313
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: SetDialogEsc falla con dialogo con boton con clausula cancel

Postby cnavarro » 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
User avatar
cnavarro
 
Posts: 6500
Joined: Wed Feb 15, 2012 8:25 pm
Location: España


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 6 guests