5/5 (1 avis)
Snippet vu 6 549 fois - Téléchargée 32 fois
procedure TForm1.Image1Click(Sender: TObject); var PositionSouris: TPoint; R, G, B, X, Y : integer; s:string; valeur_couleur : Tcolor; begin GetCursorPos(PositionSouris); valeur_couleur := canvas.pixels[PositionSouris.X,PositionSouris.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; end;
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 :(
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.