Форум: "Media";
Текущий архив: 2007.09.23;
Скачать: [xml.tar.bz2];
ВнизTColor -> RGB Найти похожие ветки
← →
iNevil © (2006-12-09 11:51) [0]Как конвертировать TColor в RGB ?
Заранее спасибо.
← →
MBo © (2006-12-09 12:13) [1]ColorToRGB ;)
← →
iNevil © (2006-12-09 12:19) [2]ха! я так и знал что есть такая фича! :)
Спасибо)
← →
Stexen © (2006-12-16 05:10) [3]ХМ, всю жизнь думал что tcolor это число состоящее из трех байт по одному на красную зеленую и синию компоненту...и что там конвертировать???может ошибаюсь...
← →
ors_archangel © (2006-12-16 08:43) [4]
> что там конвертировать???
TColor может быть ещё индексом стандартного цвета Windows (например, COLOR_BTNFACE), тогда от требует перевода, если точно знаешь, что твой clr: TColor уже точно не индекс стандартного цвета (вообще, они называются системными цветами), то можешь смело писать rgb := clr, но иначе лучше всё же rgb := ColorToRGB(clr)
← →
Stexen © (2006-12-17 01:38) [5]
> может быть ещё индексом стандартного цвета
Судя по всему, цвет занимает три байта, соответсвенно индес наверняка хранится в 4ом байте(так как хранят integer"ом). Иначе никак не определить индекс это или нет. Так что все равно можно избежать этих ф-ий, особенно учитывая, что это из библиотек дельфи, и зная то, как дельфи-библиотеки реализовывают некоторые моменты, ну может и не прав...
← →
ors_archangel © (2006-12-18 07:14) [6]
> Иначе никак не определить индекс это или нетfunction ColorToRGB(Color: TColor): Longint;
begin
if Color < 0 then
Result := GetSysColor(Color and $000000FF) else
Result := Color;
end
← →
Stexen © (2006-12-18 17:01) [7]
> ors_archangel © (18.12.06 07:14) [6]
Интересно,
Хм, и хранят в младшем байте...
Страницы: 1 вся ветка
Форум: "Media";
Текущий архив: 2007.09.23;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.042 c