Get pixel en .net?

Résolu
cs_yvesyves Messages postés 561 Date d'inscription samedi 10 janvier 2004 Statut Membre Dernière intervention 11 octobre 2010 - 18 mars 2006 à 21:56
 Utilisateur anonyme - 18 mars 2006 à 23:13
Bonjour
Je voudrais "capturer" la couleur d'un pixel definit par ses coordonnées dans un panel.
Merci

1 réponse

Utilisateur anonyme
18 mars 2006 à 23:13
Salut,

Je pense pas qu'il y est de méthode pour faire ca directement. Peut être en passant par les APIs.
Mais le plus simple et de passer par un bitmap:

Private Sub TaPanel_MouseDown(ByVal sender As Object, _
ByVal e As System.Windows.Forms.MouseEventArgs) Handles TaPanel.MouseDown
Me.BackColor = GetPixelAtPoint(TaPanel, e.Location)
End Sub

Private Function GetPixelAtPoint(ByVal Ctrl As System.Windows.Forms.Control, _
ByVal Location As System.Drawing.Point) As System.Drawing.Color
Dim TmpImg As New System.Drawing.Bitmap(Ctrl.ClientSize.Width, Ctrl.ClientSize.Height)
Ctrl.DrawToBitmap(TmpImg, TaPanel.ClientRectangle)
Return TmpImg.GetPixel(Location.X, Location.Y)
End Function

Kenji
<hr size="2" width="100%">
Merci de cliquer sur "Réponse acceptée" si une réponse vous convient.
3
Rejoignez-nous