CONNAÏTRE LES VALEURS RGB DU PIXEL SELECTIONNÉ PAR UN CLIC DE SOURIS
cs_MAURICIO
Messages postés2106Date d'inscriptionmardi 10 décembre 2002StatutModérateurDernière intervention15 décembre 2014
-
4 avril 2005 à 17:29
cs_MAURICIO
Messages postés2106Date d'inscriptionmardi 10 décembre 2002StatutModérateurDernière intervention15 décembre 2014
-
4 avril 2005 à 17:29
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_MAURICIO
Messages postés2106Date d'inscriptionmardi 10 décembre 2002StatutModérateurDernière intervention15 décembre 20145 4 avril 2005 à 17:29
Ton code ne peux pas fonctionner vu que tu récupères le pixel du Canvas de la TForm !!!
De plus, la position souris de l' ecran est une chose et la position de ton TImage en est une autre ...
Voilà une solution:
var
PositionSouris, PositionClickImage: TPoint;
R, G, B, X, Y : integer;
s:string;
valeur_couleur : Tcolor;
begin
GetCursorPos(PositionSouris);
// Récupérer la position de la souris sur l' image :
PositionClickImage := Image1.ScreenToClient(PositionSouris);
valeur_couleur := Image1.canvas.pixels[PositionClickImage.X,PositionClickImage.Y];
R := GetRValue( ColorToRGB(valeur_couleur));
G := GetGValue( ColorToRGB(valeur_couleur));
B := GetBValue( ColorToRGB(valeur_couleur));
str(R,s);
edit1.text:=s;
str(G,s);
edit2.text:=s;
str(B,s);
edit3.text:=s;
// Afficher la position de la souris :
edit4.text:=intToStr(PositionClickImage.X);
edit5.text:=intToStr(PositionClickImage.Y);
end;
Voilà, ça serait bien que tu essayes ton code avant de poster :(
4 avril 2005 à 17:29
De plus, la position souris de l' ecran est une chose et la position de ton TImage en est une autre ...
Voilà une solution:
var
PositionSouris, PositionClickImage: TPoint;
R, G, B, X, Y : integer;
s:string;
valeur_couleur : Tcolor;
begin
GetCursorPos(PositionSouris);
// Récupérer la position de la souris sur l' image :
PositionClickImage := Image1.ScreenToClient(PositionSouris);
valeur_couleur := Image1.canvas.pixels[PositionClickImage.X,PositionClickImage.Y];
R := GetRValue( ColorToRGB(valeur_couleur));
G := GetGValue( ColorToRGB(valeur_couleur));
B := GetBValue( ColorToRGB(valeur_couleur));
str(R,s);
edit1.text:=s;
str(G,s);
edit2.text:=s;
str(B,s);
edit3.text:=s;
// Afficher la position de la souris :
edit4.text:=intToStr(PositionClickImage.X);
edit5.text:=intToStr(PositionClickImage.Y);
end;
Voilà, ça serait bien que tu essayes ton code avant de poster :(