Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как присвоить цвету текст(цифровое значение)...


Vladimir1984 ©   (2006-12-29 00:27:00) 

У меня определяется цвет пикселя под курсором мышки, и цвет этого выводится на панель....Нужно присвоить цифровые значения диапозону цветов, или просто отдельному цвету, вот например:
Красный ff0000 = 5
Зеленый 00ff00 =105
или от ff0001 до ff000c =10.....
Как сделать так, чтобы на панеле выскакивало цифровое значение, которое мы задали...

Вот скрипт определения цвета пикселя под курсором.
procedure TfrmPulsar3D.Timer3Timer(Sender: TObject);

 var
DC: HDC;
Cur: TPoint;
ColorValue: Cardinal;
begin
 DC := GetDC( 0 );
 // Получаю координаты курсора
GetCursorPos( Cur );
 // Узнаю цвет пикселя в полученных координатах
ColorValue := GetPixel( DC, Cur.X, Cur.Y );
 // Показываю полученный цвет
Panel3.Color := ColorValue;
 // Показываю красную составляющую цвета
TrackRValue.Position := GetRValue( ColorValue );
 // Показываю зеленую составляющую цвета
TrackGValue.Position := GetGValue( ColorValue );
 // Показываю синюю составляющую цвета
 TrackBValue.Position := GetBValue( ColorValue );
 ReleaseDC( 0, DC );
end;


Ученик чародея   (2006-12-29 19:35:00) [1]

BinToHEX?


Zeqfreed   (2006-12-29 16:45:00) [2]

Ну так и переводи по формуле (есть на википедии) RGB-составляющие в угол (и в  яркость/насыщенность если надо) на HSL cone.


Vladimir1984   (2006-12-29 14:34:00) [3]


> Нужно сопоставить чтоли цвета некоторому диапазону значений?
>  Ну тут все зависит только от того, есть ли какая-то закономерность
> или нет её.

Да именно так...Есть закономерность...Красный=5......Малиновый=255 (Все по HSL)....


ЮЮ   (2006-12-29 06:43:00) [4]

чтобы на панеле выскакивало цифровое значение, которое мы задали...

Panel3.Caption := ColorToString(Panel3.Color);

только это не "выскакивание" :)


Zeqfreed   (2006-12-29 06:22:00) [5]


> Дальше нужно чтобы не просто раскрашивал Panel3, а еще выводил
> цифровые значения...А значения надо задать еще...

А-а-а! Ну так теперь все как нельзя понятно! Кх-м.

Нужно сопоставить чтоли цвета некоторому диапазону значений? Ну тут все зависит только от того, есть ли какая-то закономерность или нет её.


Vladimir1984   (2006-12-29 03:14:00) [6]

Удалено модератором


Vladimir1984   (2006-12-29 02:14:00) [7]

Дальше нужно чтобы не просто раскрашивал Panel3, а еще выводил цифровые значения...А значения надо задать еще...


Zeqfreed   (2006-12-29 01:52:00) [8]

Ещё раз по-русски пожалуйста :)
С помощью GetXValue ты получаешь численное значение одной из RGB-компонент цвета. Дальше что нужно?


Наверх

Титульная страница Поиск, карта сайта Написать письмо