Code: Select all
// prima immagine modificata
@ 0,15 SAY "MODIFICATA" OF oDlg
@ 2,0 IMAGE oImg SIZE 150,150 OF oDlg
oImg:Progress( .f. )
//Disegno il cerchietto dove premo
oImg:bLClicked = { | nRow, nCol | (NMSGBOX(NROW,NCOL),DRAWCIRCLE( oDLG, nRow, nCol, 100, CLR_HRED )) }
io voglio far disegnare in quel punto un cerchietto rosso la funzione qui sotto me lo disegna un po spostato..
Code: Select all
STATIC FUNCTION DRAWCIRCLE( oDLG, nTop, nLeft, nWidth, nColor )
LOCAL hDC := oDlg:GetDC()
LOCAL hPen := CREATEPEN( PS_SOLID, 2, nColor )
LOCAL hOldPen := SELECTOBJECT( hDC, hPen )
LOCAL hOldBrush := SELECTOBJECT( hDC, GETSTOCKOBJECT( BRUSH_NULL ) )
oDlg:Circle( nTop, nLeft, nWidth )
SELECTOBJECT( hDC, hOldPen )
SELECTOBJECT( hDC, hOldBrush )
DELETEOBJECT( hPen )
RETURN NIL
quando invece io carico la stessa dialog con la stessa immagine e gli faccio disegnare manualmente un cerchio a quelle coordinate
Code: Select all
DRAWCIRCLE( oDLG,39, 282, 23, CLR_HGREEN )
come è possibile ?
Qualche idea ?