1.RGB转换为Tcolor function RGBToColor(R,G,B: byte): Tcolor;begin Result := B Shl 16 or G shl 8 or R;end; 2.Tcolor转换为RGB proceudre Tform1.Button1Clink(Sender: Tobject);var Color: TColor; R, G, B: integer;begin Color := ClBlack; R := Color and $FF;
function RGB2TColor(const R, G, B: Byte): Integer;begin // convert hexa-decimal values to RGB Result := R + G shl 8 + B shl 16;end; procedure TColor2RGB(const Color: TColor; var R, G, B: Byte);begin R := Color and $FF; G := (Color shr 8) and $FF;
在之前的一篇文章<将16进制的颜色转为rgb颜色>中,曾经写过将16进制的颜色转换为rgb颜色. 当然了,今天再看,还是有很多可以优化的地方,所以对之前的代码重构了一遍,并且同时写了一个反向转换(也就是将rgb颜色值转换为字符串形式的16进制的颜色值)函数. 16进制转换rgb: function transferColorToRgb(color) { if (typeof color !== 'string' && !(color instanceof String)) re