delphi颜色转换函数


本文整理自网络,侵删。

 function coloto111(color:TColor):String ;
var
r,g,b:Byte;
begin


r:=GetRValue(color);
g:=GetgValue(color);
b:=GetbValue(color);


//memo2.Lines.Add (inttostr(r)+' '+inttostr(g)+' '+inttostr(b));
//memo2.Lines.Add ('$' + IntToHex (TColor (RGB (r, g, b)), 8)) ;
Result:= '$' + IntToHex (TColor (RGB (r, g, b)), 8);
end;

function HexColorToHtmlColor(c: Integer): string;
var
R,G,B: Byte;
begin
R := c and $FF;
G := (c shr 8) and $FF;
B := (c shr 16) and $FF;
Result := #35 + Format('%.2x%.2x%.2x',[r,g,b]);
end;


function colortohexcolor(c:Integer):String ;
const
Digits : array[0..$F] of Char = '0123456789ABCDEF';
var
rr,gg,bb : byte;
begin
rr := getRvalue(c); {分解红色分量}
gg := getGvalue(c); {分解绿色分量}
bb := getBvalue(c); {分解蓝色分量}
Result:= '#' + Digits[rr shr 4] + Digits[rr and $F] +
Digits[gg shr 4] + Digits[gg and $F] + Digits[bb shr 4] +
Digits[bb and $F];{显示相应十六进制数值}


end;




procedure TForm1.Button1Click(Sender: TObject);
begin

memo1.Lines.Add(coloto111(clBlue)) ;
memo1.Lines.Add(colortohexcolor(clBlue ));
memo1.Lines.Add(ColorToString(clBlue ));
memo1.Lines.Add(HexColorToHtmlColor(clBlue ));
//www.delphitop.com
Label1.Color:=StrToInt(coloto111(clBlue))
end;

相关阅读 >>

如何在Delphi中获取字符串字节数?

Delphi编写的lpk.dll专杀,可清理rar

Delphi sysutils.comparetext的注释

Delphi 加载大文件显示进度条

Delphi xe5 json与Delphi object的互换

Delphi中messagebox用法

Delphi unigui form控件跳转

Delphi qr /条形码扫描仪应用示例代码(使用zxing,tframestand)

Delphi win32_diskdrive 硬盘 参数说明

Delphi中如何用一个按钮控制开与关两个状态

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...