El siguiente trocito de código, no consigo que me funcione correctamente (ver línea de comentada):
Code: Select all
DEFINE WINDOW oWndChild MDICHILD OF oWndPrinc ;
FROM 5,5 TO 6,6;
COLOR "N/W" ;
BORDER NONE
oWndChild:bGotFocus = { || oDlg:SetFocus() }
DEFINE DIALOG oDlg RESOURCE "Articulos" OF oWndChild
REDEFINE SAY oSayTec_Nom PROMPT CargaFicTec( oArt ) ID 500 OF oDlg UPDATE
oSayTec_Nom:SetColor( CLR_WHITE, GetSysColor( COLOR_BTNFACE ) )
oSayTec_Nom:lWantClick := .t.
oSayTec_Nom:bLClicked := { || MsgInfo("TAMOS") } // ESTA LINEA NO SE EJECUTA AL HACER CLIC SOBRE oSayTec_Nom
oSayTec_Nom:oCursor := oCursorHand
for n = 1 to Len( oDlg:aControls )
oDlg:aControls[ n ]:bLClicked = GenBlock( oWndChild, oDlg:aControls[ n ] )
next
ACTIVATE DIALOG oDlg NOWAIT CENTERED;
ON INIT ( oDlg:Move( 0, 0 ) );
VALID ( oWndChild:End(), .t. )
oWndChild:nWidth := oDlg:nWidth+7
oWndChild:nHeight := oDlg:nHeight+32
ACTIVATE WINDOW oWndChild ON INIT oWndPrinc:paint()
El funcionamiento debería ser una al estilo de un link en una página web, es decir, es un texto que aparece de distinto color, al pasar por encima de el, el cursor cambia y al hacer click sobre el, ejecuta una función, en este caso el MsgInfo("RAMOS").
Alguna sugerencia? algún error a simple vista de esos que tenemos los novatos?
GRACIAS!