Visual Basic - Colorear/rellenar imagenes cargada a un picturebox

Life is soft - evento anual de software empresarial
   
Vista:

Colorear/rellenar imagenes cargada a un picturebox

Publicado por Juan Ricardo Cogollo Oyola (1 intervención) el 23/12/2008 07:34:47
Hola Programadores.

Necesito impelmentar e visual basic algo parecido a la herramienta de relleno de color del tradicional paint, pero no solo para figuras como circulos y triagulos si no para imagenes o croquis de mapas paar colorear.

aqui muestro algo de codigo de lo que llevo :

Private Declare Function CreateSolidBrush Lib "gdi32" (ByVal crColor As Long) As Long
Private Declare Function ExtFloodFill Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal crColor As Long, ByVal wFillType As Long) As Long
Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long
Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long

Private Const FLOODFILLBORDER = 0
Private Const FLOODFILLSURFACE = 1

Private Sub Command2_Click()
On Error GoTo ClrError
CommonDialog1.CancelError = True
CommonDialog1.ShowColor
Exit Sub
ClrError:

End Sub

Private Sub Picture1_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single)

' create solid brush object
brush = CreateSolidBrush(CommonDialog1.Color)
' select it into the current device context
SelectObject Picture1.hdc, brush
' fill area with selected brush
ExtFloodFill Picture1.hdc, x, y, Picture1.point(x, y), FLOODFILLSURFACE
' brush object no longer needed, delete it
DeleteObject brush
End Sub

nota: lo anterior me funciona como quiero pero solo cuando cargo la imagen como fondo del form, en este caso la tengo en el picture box y alli no me funciona.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder