2
私は基数を受け入れるGetRValueに色を渡す必要があります。しかし、TColorは整数であり、時にはレンジチェックエラーを起こすことがあります。もし私が負であれば私の色を0にトリミングすべきですか?Windows.GetRValueは基数を受け入れますが、TColorは整数です
私は基数を受け入れるGetRValueに色を渡す必要があります。しかし、TColorは整数であり、時にはレンジチェックエラーを起こすことがあります。もし私が負であれば私の色を0にトリミングすべきですか?Windows.GetRValueは基数を受け入れますが、TColorは整数です
負の値は、あなたがGetRValue
にclWindow
のような特殊な色の値を渡していることを示しています。それは間違いです。真のRGB値に変換するには、最初にColorToRGB
に電話する必要があります。 32ビット整数に格納された真のRGB値は決して負ではありません。
R := GetRValue(ColorToRGB(Color));
もう1つの説明は、ARGB値をTColor
に設定することです。 TColor
は、アルファチャンネルを保持していないので、それも間違いです。
右...ああ!ありがとう! – Ampere