如何将font的color值转化成'#234567'如此地字符串输出亚?(100分)

  • 主题发起人 主题发起人 PhoenixCry
  • 开始时间 开始时间
P

PhoenixCry

Unregistered / Unconfirmed
GUEST, unregistred user!
也就是直接将颜色值转化成html语言中的表示!多谢了!
 
GetTextColor

VB声明
Declare Function GetTextColor Lib "gdi32" Alias "GetTextColor" (ByVal hdc As Long) As Long
说明
判断当前字体颜色。通常也称为“前景色”
返回值
Long,文字的当前RGB颜色设置。如果出错,会返回CLR_INVALID。会设置GetLastError
参数表
参数 类型及说明
hdc Long,设备场景的句柄


edit1.text:=inttostr(gettextcolor(form_fbmain.Font.Handle));
 
procedure TForm1.Button1Click(Sender: TObject);
var
s: String;
begin
FmtStr(s, '#%.6X', [ColorToRGB(clRed)]);
ShowMessage(s);
end;
 
function ColorToHTMLHex(Color: TColor): string;
begin
Result := IntToHex(ColorToRGB(Color),6);
Result := Copy(Result,5,2)+Copy(Result,3,2)+Copy(Result,1,2);
end;
 
不知道有没有ColorToStr,
实际上,color 就是一个整数,看看他的声明就知道了,
html 中用#00000000 是16进制,
IntToHex 应该可以吧,
 
Color是整数,把Color写入INI文件就会发现只能用INIFILE.WriteInteger来写,如
写入INIFILE.WriteInteger('aaa','bbb',Color);你会发现其实写入的是一个整数
值。
 
多人接受答案了。
 
后退
顶部