fragmatyc
Messages postés57Date d'inscriptiondimanche 9 mars 2003StatutMembreDernière intervention17 octobre 2009
-
2 août 2003 à 06:57
Bricomix
Messages postés340Date d'inscriptionvendredi 11 octobre 2002StatutMembreDernière intervention14 février 2005
-
2 août 2003 à 14:40
Bonjour,
Je suis débutant et jaimerais savoir si quelqu'un sait si ça ce peut que l'on puisse changer la couleur (ex.: blanc) par une autre (ex.: bleu) sur une image (picturebox).
Je sais que cela ce peut (surement) avec l'api btlbit ou de quoi dans le genre
cedricbi
Messages postés185Date d'inscriptionmercredi 18 décembre 2002StatutMembreDernière intervention21 mars 2011 2 août 2003 à 08:32
Si c'est pour changer la couleur de fond il faut faire (par exemple : Picture1.BackColor = vbGreen)
Sinon si c'est pour changer une couleur appartenant a l'image c'est plus compliqué. Et ça, je ne sais pas le faire. :sad)
Bricomix
Messages postés340Date d'inscriptionvendredi 11 octobre 2002StatutMembreDernière intervention14 février 2005 2 août 2003 à 14:40
Voilà, je t'ai fait un petit code (conseil : mets la propriété "ScaleMode" du picturebox à "3 - Pixel", sinon c'est archi lent). Y'a surement plus rapide avec des APIs mais bon tiens quand même :
Private Sub Change_Color(PictureB As PictureBox, ByVal ChangeColor As Long, ByVal NewColor As Long)
Dim AnaXPoints As Integer, AnaYPoints As Integer
For AnaXPoints = 0 To PictureB.ScaleWidth
For AnaYPoints = 0 To PictureB.ScaleHeight
If PictureB.Point(AnaXPoints, AnaYPoints) = ChangeColor Then PictureB.PSet (AnaXPoints, AnaYPoints), NewColor
'DoEvents
Next AnaYPoints
Next AnaXPoints
End Sub
Tu mets la procédure dans un coin de ta form ou de ton module et pour l'appeler : Change_Color nomdupicturebox, anciennecouleur, nouvellecouleur