It must be the same BMP ( size ) but with a red Arrow. A BMP for each color.
You can replace the BMP with the black Arrow with the one with the red Arrow.
// from File
// REDEFINE BITMAP oBmp1 ID 100 OF oDlg FILENAME Black.bmp"
// from resource
REDEFINE BITMAP oBMP1 ID 100 ADJUST RESOURCE "Black" OF oDlg
oBMP1:bPainted := {|hDC| ReplaceBMP ( oBMP1, newBMP1 ) }
A
oBMP1:Refresh() will replace the BMP with newBMP1
( can be a Button-action or Mouse-focus )
// Replace BMP on MouseClick
REDEFINE BITMAP oBMP1 ID 100 ADJUST RESOURCE "Black" OF oDlg ;
ON CLICK ReplaceBMP ( oBMP1, "Red.bmp" )
// ------------ Replace ------------
FUNCTION ReplaceBMP( oBitmap, cBitmap)
Local oImage
DEFINE IMAGE oImage FILENAME cBitmap
aRect := GETCLIENTRECT( oBitmap:hWnd )
PalBmpDraw( oBitmap:GETDC(), 0, 0, oImage:hBitmap, , aRect[4], aRect[3] )
oBitmap:ReleaseDC()
RETURN( NIL )
Best Regards
Uwe
