![]() |
gr32: Alpha Wert für TImage32 bei MouseMove ermitteln
Wer kann mir sagen wie ich den zugehörigen Alpha Wert bekomme bei einem TImage32 und MouseMove
procedure getcolor; var mycolor: Tcolor; begin mycolor := imgview.canvas.pixels[x, y]; end; Schon im voraus vielen Dank, Torsten Pankratz |
Re: gr32: Alpha Wert für TImage32 bei MouseMove ermitteln
Hallo,
erstmal solltest du die mauskkordinaten zu den Koordinaten des enthaltenen TBitmap32 translieren, TImage32 hat dafür eine Funktion. Den Alphawert kannst du rausfinden, indem du den Color32-Wert auf TColor32Entry castest. Da hast du dann ein Mamber "A", das ist dein Alpha-Wert. |
Re: gr32: Alpha Wert für TImage32 bei MouseMove ermitteln
Hi,
oder mittels
Delphi-Quellcode:
MfG,AlphaComponent(imgview.canvas.pixels[x, y]); Manne |
Re: gr32: Alpha Wert für TImage32 bei MouseMove ermitteln
bekomme aus Tcolor32 keinen brauchbaren Integer Wert 0-255, vielleicht noch die Zeile?
Gruß Torsten |
Re: gr32: Alpha Wert für TImage32 bei MouseMove ermitteln
Alles klar, inttostr(AlphaComponent(imgview.canvas.pixels[x, y]))
Danke Gruß Torsten |
Re: gr32: Alpha Wert für TImage32 bei MouseMove ermitteln
doch zu voreilig da ich noch mit einer älteren Version von gr32 arbeite und TColor32Entry noch nicht existiert.
bekomme mit alphalabel.caption:=inttostr(AlphaComponent(imgvie w.canvas.pixels[x, y]) shr 24); immer eine 0. Gruß Torsten |
Re: gr32: Alpha Wert für TImage32 bei MouseMove ermitteln
Schau dir das hier nocmal genau an:
Delphi-Quellcode:
:zwinker:
Alpha := Color32 shr 24;
|
Re: gr32: Alpha Wert für TImage32 bei MouseMove ermitteln
ich habe es mal so versucht jedoch funkts so auch nicht.
var AColor32: TColor32; begin acolor32:=AlphaComponent(imgview.canvas.pixels[x, y]) ; colorlabel.caption:=inttostr(acolor32 shr 24); end; vielleicht kann sich ja noch mal einer dem annehmen. Gruß Torsten |
Re: gr32: Alpha Wert für TImage32 bei MouseMove ermitteln
ok, jetzt nochmal zum mitschreiben:
Delphi-Quellcode:
var
Alpha: Byte; Alpha := Color32 shr 24; ShowMessage(IntTostr(Alpha)); |
Re: gr32: Alpha Wert für TImage32 bei MouseMove ermitteln
So sieht mein Code aus der natürlich immer noch nur 0 ergibt. Sei so gnädig und gib mir doch noch ein paar Tips mehr.
procedure TMainForm.Image32MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer; Layer: TCustomLayer); var AColor32: TColor32; alpha: byte; begin acolor32:=AlphaComponent(imgview.canvas.pixels[x, y]); Alpha := acolor32 shr 24; colorlabel.caption:=inttostr(alpha);; end; gruß Torsten Looktrue.com |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:31 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz