Recuperer la Couleur d'un Pixel dans une fenetre. [Résolu]

Messages postés
6
Date d'inscription
jeudi 29 septembre 2005
Statut
Membre
Dernière intervention
3 octobre 2005
- - Dernière réponse : cs_AlexMAN
Messages postés
1536
Date d'inscription
samedi 21 décembre 2002
Statut
Membre
Dernière intervention
24 mai 2009
- 3 oct. 2005 à 06:50
Bonjour à tous,
Est il possible de connaitre la couleur d'un pixel dans une fenetre (dont on connait le handle ) ou sur l'ensemble de l'ecran.
J'ai essayé GetPixel() en vain.
Je voudrai une solution pour du C++.
Un exemple complet en C++ m'aiderai beaucoup.

Merci d'avance.
Afficher la suite 

7 réponses

Messages postés
6
Date d'inscription
jeudi 29 septembre 2005
Statut
Membre
Dernière intervention
3 octobre 2005
0
Merci
Salut à tous,
J'indiquai le handle de la fenetre de mon programme au lieu de donne le handle de l'ecran entier.
J'ai utiliser "deskTopDC = GetWindowDC(GetDesktopWindow())" pour le handle du Desktop et cela me donne la couleur du pixel referé par rapport au coin superieur gauche de l'ecran.
Fantastique.

Merci à tous
Commenter la réponse de nomlingote
Messages postés
1536
Date d'inscription
samedi 21 décembre 2002
Statut
Membre
Dernière intervention
24 mai 2009
1
0
Merci
hDesk = GetDC(0); //Renvoie aussi le DC de l'ecran.

+2(p - n)
Commenter la réponse de cs_AlexMAN
Messages postés
1536
Date d'inscription
samedi 21 décembre 2002
Statut
Membre
Dernière intervention
24 mai 2009
1
-1
Merci
GetPixel() fonctionne parfaitement, d'ou vient le probleme ?

+2(p - n)
Commenter la réponse de cs_AlexMAN
Messages postés
6539
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
-1
Merci
Tu as un HWND. Tu obtiens un HDC avec GetDC, tu peux alors utiliser GetPixel, puis libérer ton HDC avec ReleaseDC
Commenter la réponse de vecchio56
Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
-1
Merci
int iPixel;

iPixel = GetPixel(hWindow, 10, 20);

Ce te renvoie la couleur du pixel au point de coordonnées (10,20) ayant pour origine ta fenetre.

Shell
Commenter la réponse de DeAtHCrAsH
Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
-1
Merci
Si tu as deja essayé ca, dis nous plutot d'ou vient ton erreur avec GetPixel.

Shell
Commenter la réponse de DeAtHCrAsH
Messages postés
1910
Date d'inscription
vendredi 18 juin 2004
Statut
Modérateur
Dernière intervention
14 novembre 2014
7
-2
Merci
Salut,

Voici un petit exemple:

HDC wdc=GetDC(hWnd);

COLORREF couleur = GetPixel(wdc,100,50);

ReleaseDC(hWnd,wdc);

Pour plus de détails, tu peux regarder ma source dans laquelle je
récupère les couleurs de suites de pixels avant de déssiner un cadre de
sélection pour ensuite les restaurer quand ce cadre est déplacé:

http://www.cppfrance.com/codes/IMPRIMEUR-D-IMAGES-BMP-API-/33749.aspx
Commenter la réponse de racpp