Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.04.29;
Скачать: CL | DM;

Вниз

Спектр цветов   Найти похожие ветки 

 
Igor_Z   (2007-03-02 13:04) [0]

Уважаемые мастера.
Скажите, как OnPaint формы
получить спектр цветов, как в ColorDialog.
Заранее спасибо.


 
clickmaker ©   (2007-03-02 13:08) [1]

1) нарисовать картинку попиксельно/содрать скриншот, сохранить в bmp -> TBitmap
2) рисовать попиксельно в OnPaint
3) GradientFill()


 
SlymRO ©   (2007-03-02 13:24) [2]

for r:=0 to 255 do
for g:=0 to 255 do
for b:=0 to 255 do
 PutPixel:=rgb(r,g,b);

всего 2^24 вариантов


 
KADAN ©   (2007-03-02 14:23) [3]

procedure TForm1.FormPaint(Sender: TObject);
var i, j: integer;
   r, g, b: Byte;
   D: Real;

begin
 D := ClientWidth / 3;
 for i := 0 to ClientWidth - 1 do begin
   r := 0; g := 0; b := 0;
   if i <= D  then begin
     r := Min(255, Round(511 * (1 - i / D)));
     g := Min(255, Round(511 * (i / D)));
   end else
   if i <= 2 * D then begin
     g := Min(255, Round(511 * (1 - (i - D) / D)));
     b := Min(255, Round(511 * ((i - D) / D)));
   end else begin
     b := Min(255, Round(511 * (1 - (i - 2 * D) / D)));
     r := Min(255, Round(511 * ((i - 2 * D) / D)));
   end;
   for j := 0 to ClientHeight - 1 do begin
     Canvas.Pixels[i, j] := RGB(Round(r + (127 - r) * j / ClientHeight), Round(g + (127 - g) * j / ClientHeight), Round(b + (127 - b) * j / ClientHeight));
   end;
 end;
end;



Страницы: 1 вся ветка

Текущий архив: 2007.04.29;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.031 c
3-1169549550
iviom
2007-01-23 13:52
2007.04.29
Как поставить NULL в поле datetime через ADODateSet


2-1175754669
_max_
2007-04-05 10:31
2007.04.29
tcp &amp; peerport


2-1176197360
npu3pak
2007-04-10 13:29
2007.04.29
Как райионально добавлять данные в базу Access?


3-1170832786
alsov
2007-02-07 10:19
2007.04.29
Организация структуры БД


15-1175518945
Kerk
2007-04-02 17:02
2007.04.29
Вопрос линуксоидам