{"id":110,"date":"2007-08-28T16:36:00","date_gmt":"2007-08-28T16:36:00","guid":{"rendered":"http:\/\/www.webmundi.com\/?p=110"},"modified":"2020-08-18T16:48:56","modified_gmt":"2020-08-18T19:48:56","slug":"criando-um-efeito-degrade-de-cores","status":"publish","type":"post","link":"http:\/\/localhost\/cmswebmundicom\/desenvolvimento-de-sistemas\/criando-um-efeito-degrade-de-cores\/","title":{"rendered":"Criando um efeito degrad\u00ea de cores"},"content":{"rendered":"
Criando um efeito degrad\u00ea de cores<\/p>\n
Esta dica mostra como criar um efeito degrad\u00ea em um Canvas qualquer.
\nNeste caso, estamos utilizando um componente TPaintBox e o evento OnPaint. Dependendo da utiliza\u00e7\u00e3o deste recurso, esta rotina pode ser adaptada para funcionar em um outro componente.<\/p>\n
procedure TForm1.PaintBox1Paint(Sender: TObject);
\nconst
\nclStart: TColor = clRed;
\nclEnd: TColor = clBlack;
\nvar
\nACanvas: TCanvas;
\nARect: TRect;
\ni : Integer;
\nrc, gc, bc, h: Integer;
\nbegin<\/p>\n
ACanvas := PaintBox1.Canvas;
\nARect := PaintBox1.ClientRect;<\/p>\n
h := ARect.Bottom – ARect.Top;<\/p>\n
{ desenha o degrad\u00ea }
\nfor i := 0 to (ARect.Bottom – ARect.Top) do
\nbegin
\nrc := GetRValue(clStart);
\ngc := GetGValue(clStart);
\nbc := GetBValue(clStart);
\nrc := rc + (((GetRValue(clEnd) – rc) * (ARect.Top + i)) div h);
\ngc := gc + (((GetGValue(clEnd) – gc) * (ARect.Top + i)) div h);
\nbc := bc + (((GetBValue(clEnd) – bc) * (ARect.Top + i)) div h);
\nACanvas.Brush.Style := bsSolid;
\nACanvas.Brush.Color := RGB(rc, gc, bc);
\nACanvas.FillRect(Rect(ARect.Left, ARect.Top + i, ARect.Right, ARect.Top + i + 1));
\nend;<\/p>\n
end;<\/p>\n","protected":false},"excerpt":{"rendered":"
Criando um efeito degrad\u00ea de cores Esta dica mostra como criar um efeito degrad\u00ea em um Canvas qualquer. Neste caso,…<\/p>\n","protected":false},"author":2,"featured_media":29262,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_kadence_starter_templates_imported_post":false,"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"footnotes":""},"categories":[9,13],"tags":[27,28,14],"class_list":["post-110","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-delphi","category-desenvolvimento-de-sistemas","tag-delphi","tag-desenvolvimento-de-sistemas","tag-programacao"],"yoast_head":"\n