Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Как преобразовать шестнадцатиричный цвет HTML в TColor

Стоит взвод молодых бойцов. Старшина:
- По порядку номеров рассчитайсь!!! Солдат-программист:
- Можно вопрос ?
- Можно...
- А в какой системе? Десятичной? Шестнадцатеричной?
- Для дураков объясняю, в десятичной!!!
- Понял! Нулевой!!!


unit colours;

interface
uses
  Windows, Sysutils, Graphics;

  function ConvertHtmlHexToTColor(Color: string):TColor ;
  function CheckHexForHash(col: string):string ;

implementation


function ConvertHtmlHexToTColor(Color: string):TColor ;
var
  rColor: TColor;
begin
  Color := CheckHexForHash(Color);

  if (length(color) >= 6) then
  begin
    {незабудьте, что TColor это bgr, а не rgb: поэтому необходимо изменить порядок}
    color := '$00' + copy(color,5,2) + copy(color,3,2) + copy(color,1,2);
    rColor := StrToInt(color);
  end;

  result := rColor;
end;


// Просто проверяет первый сивол строки на наличие '#' и удаляет его, если он найден
function CheckHexForHash(col: string):string ;
begin
  if col[1] = '#' then
    col := StringReplace(col,'#','',[rfReplaceAll]);
  result := col;
end;

end.

Проект Delphi World © Выпуск 2002 - 2004
Автор проекта: ___Nikolay