Entiendo el funcionamiento de ambas pero he detectado un estraño funcionamiento.
Si doy DBLCLICK con el ratón sobre el registro activo, (sin realizar ningún cambio , no me muevo de la linea del browse), se ejecuta siempre el ON CHANGE antes del ON DBLCLIK.
¿por que ..?
¿ Es correcto ese funcionamiento...? A mi me parece que no.
Hay alguna forma de evitarlo.....
Muy agradecido y vamos con una cervecita.., bien fresquita!!
Code: Select all
/*
* MINIGUI - Harbour Win32 GUI library Demo
*
* Copyright 2002 Roberto Lopez <harbourminigui@gmail.com>
* http://harbourminigui.googlepages.com/
*/
* Enjoy !
#include "minigui.ch"
Function Main
SET CENTURY ON
SET DELETED ON
DEFINE WINDOW Form_1 ;
AT 0,0 ;
WIDTH 640 HEIGHT 480 ;
TITLE 'MiniGUI Browse Demo)' ;
MAIN NOMAXIMIZE ;
ON INIT OpenTables() ;
ON RELEASE CloseTables()
DEFINE MAIN MENU
POPUP 'File'
ITEM 'Set Browse Value' ACTION Form_1.Browse_1.Value := 10
ITEM 'Get Browse Value' ACTION MsgInfo ( Str ( Form_1.Browse_1.Value ) )
ITEM 'Refresh Browse' ACTION Form_1.Browse_1.Refresh
SEPARATOR
ITEM 'Exit' ACTION Form_1.Release
END POPUP
POPUP 'Help'
ITEM 'About' ACTION MsgInfo ("MiniGUI Browse Demo")
END POPUP
END MENU
DEFINE STATUSBAR
STATUSITEM ''
END STATUSBAR
@ 10,10 BROWSE Browse_1 ;
WIDTH 610 ;
HEIGHT 390 ;
HEADERS { 'Code' , 'First Name' , 'Last Name', 'Birth Date', 'Married' , 'Biography' } ;
WIDTHS { 150 , 150 , 150 , 150 , 150 , 150 } ;
WORKAREA Test ;
FIELDS { 'Test->Code' , 'Test->First' , 'Test->Last' , 'Test->Birth' , 'Test->Married' , 'Test->Bio' } ;
FONT 'CALIBRI' SIZE 10 ;
TOOLTIP 'Browse Test' ;
ON CHANGE ChangeTest() ;
ON DBLCLICK RE_ChangeTest() ;
JUSTIFY { BROWSE_JTFY_LEFT,BROWSE_JTFY_CENTER, BROWSE_JTFY_CENTER, BROWSE_JTFY_CENTER,BROWSE_JTFY_CENTER,BROWSE_JTFY_CENTER}
END WINDOW
CENTER WINDOW Form_1
Form_1.Browse_1.SetFocus
ACTIVATE WINDOW Form_1
Return Nil
Procedure OpenTables()
Use Test //Index Code
Index On Code To Code
Go Top
Form_1.Browse_1.Value := RecNo()
Return Nil
Procedure CloseTables()
Use
Return Nil
Procedure ChangeTest()
Form_1.StatusBar.Item(1) := 'Selected Record: ' + Alltrim( Str( Form_1.Browse_1.Value ) )
MSGBOX("CHANGE")
Return
Procedure Re_ChangeTest()
Form_1.StatusBar.Item(1) := 'Selected Record: ' + Alltrim( Str( Form_1.Browse_1.Value ) )
MSGBOX("Re_CHANGE")
Return