Weil ich es selbst grade wieder brauchte und suchen musste ....
AlphaColorToColor aus System.UIConsts
nur andersrum?
Wer bitte ist auf die saublöde Idee gekommen, das in der Implementation von FMX.Platform.Win zu verstecken? (also unaufrufbar hoch Zwei)
Delphi-Quellcode:
function TWinSystemAppearanceService.ReadSystemColorFromRegistry(const AType: TSystemColorType): TAlphaColor;
function ColorToAlphaColor(const AColor: TColor): TAlphaColor;
var
LColorRec: TColorRec;
LAlphaColorRec: TAlphaColorRec;
begin
LColorRec.Color := TColors.ColorToRGB(AColor);
LAlphaColorRec.A := 255;
LAlphaColorRec.R := LColorRec.R;
LAlphaColorRec.G := LColorRec.G;
LAlphaColorRec.B := LColorRec.B;
Result := LAlphaColorRec.Color;
end;
ColorToAlphaColor:
Color := AlphaColorToColor(AlphaColor or $FF000000) and $00FFFFFF;
Aber eigentlich ist ja AlphaColorToColor komplett falsch, da doch mit Alpha multipliziert werden müsste?
Ein Therapeut entspricht 1024 Gigapeut.