Thursday, July 17, 2008

Tipy a triky v Delphi, díl 61.
V našem seriálu už jsme vylepšovali aplikace opravdu rozličnými způsoby. Od tvaru a barev samotného okna, přes úpravu jednotlivých komponent. Ne vždy to samozřejmě bylo účelné a některá tato vylepšení byla spíše pro zábavu a zkoušení. Vše záleží do jisté míry na vašem vkusu, jak moc aplikaci podobnými efekty "přeplácáte". Do podobné kategorie spadá i dnešní tip.
Ukážeme si, jak na pozadí formuláře, které je jinak šedivě (či jinak) nudné, nakreslit duhu. Tedy, ne úplně přesně duhu, ale spíše barevné spektrum. Zkrátka jednotlivé barvy spektra, které postupně přecházejí jedna v druhou.
Příklad se skládá vlastně ze dvou procedur. První slouží k samotnému vykreslování "duhy", druhá pro zjišťování čísla barvy na daném místě duhy (viz. dále). Pohledem do zdrojového kódu můžete vidět, jak jsou postupně kresleny přechody jednotlivých barev. Procedura má postupně parametry, které určují místo, kde bude spektrum kresleno (zde plátno formuláře), dále souřadnice a velikost spektra. Předposledním parametrem určíme, zda má být spektrum horizontální či vertikální a posledním parametrem můžeme zajistit, zda má spektrum opět končit červenou počáteční barvou a uzavřít tak pomyslný "kruh" (což v tomto případě není zrovna přesné vyjádření).
Druhá procedura je spíše takové nepovinné rozšíření pro kontrolu, se samotným kreslením spektra nemá nic společného. Poslouží nám pouze k tomu, že po kliknutí na libovolné místo formuláře se nám zobrazí hodnota barvy, kterou v daném místě spektrum má.