急急急!怎么将 ColorDialog1.Color 的值 转换成 六位十六进制的字符串啊??(200分)

  • 主题发起人 牧羊狐
  • 开始时间

牧羊狐

Unregistered / Unconfirmed
GUEST, unregistred user!
ColorDialog1.Color 的值 是TColor类型的,转不成字符串

在属性栏里显示的是8位,前两位好像一直是00

我需要的是这样:
把后六位数字转变成六位长度的字符串,而且数字(或字母)还是一样的

诸位高手帮忙啊,200分先放这儿啦!!!

 
procedure TForm1.Button1Click(Sender: TObject);
begin
if ColorDialog1.Execute then
begin
Label1.Caption := IntToHex(Ord(ColorDialog1.Color), 8);
end;
end;
 
其实TColor型就是十六进制数,不用转换为十六位,用整型表示或记录就可以
 
procedure TForm1.Button1Click(Sender: TObject);
var
s:string;
begin
if colordialog1.Execute then
begin
s:=inttohex(colordialog1.color,6);
showmessage(s);
end;
end;
 
inttohex(colordialog.color,6);
 
在属性栏里显示的是8位,前两位好像一直是00.
format("%.8x',[colorDialog1.color]);

试试.!
 
呵呵,高手就是高手啊!

谢谢诸位啦!!
 
顶部