Sigo comprobando el motivo por el que la tecla Esc me cierra los dialogos y he descubierto que el valid no funciona cuando se pulsa la tecla escape
Pongo ejemplo. En este ejemplo, si cierro el dialogo con el raton pulsado el boton de cerrar la comprobación de finalización del diálogo funciona correctamente,
sin embargo si pulso la tecla escape, da igual lo que le responda a la pregunta de validacion del dialogo y siempre se cierra
Code: Select all
#include "FiveWin.ch"
STATIC oWnd
//----------------------------------------------------------------------------//
function Main()
//Local oWnd
DEFINE WINDOW oWnd FROM 0,0 TO 600,800 PIXEL TITLE "Prueba" ;
MENU BuildMenu(oWnd)
ACTIVATE WINDOW ownd ON INIT oWnd:Center()
return nil
//----------------------------------------------------------------------------//
STATIC FUNCTION BuildMENU()
LOCAL OMENU
MENU oMenu
MENUITEM "Prueba" ACTION Prueba2()
MENUITEM "Salir" ACTION oWnd:End()
ENDMENU
RETURN oMenu
//----------------------------------------------------------------------------//
STATIC FUNCTION Prueba2(oWnd)
Local oChild, oDlg, oFld
DEFINE DIALOG oDlg SIZE 640, 480 PIXEL;
COLOR NIL, CLR_HGREEN ;
TITLE "Folder en dialogo" ;
OF oWnd
@ 1, 1 FOLDER oFld PROMPTS "Folder1", "Folder2" OF oDlg;
SIZE 200,200
ACTIVATE DIALOG oDlg NOWAIT VALID MsgYesNo("¿Salir?")
RETURN NIL
Será algo de mi versión de FIVEWIN
fivewin 13.06
harbour 3.2.0dev (r1307082134)
bcc7