Scrollbar, trackbar


Komponent scroolbar - Miešanie farieb
Posuvná lišta - TrackBar
Úlohy na riešenie


Komponent scroolbar - Miešanie farieb      Nahor


Navrhnime projekt, ktorý bude miešať farby a farbiť tak napr. plochu formuláru.
V riešení použijeme možnosti nového prvku - posuvníka - scrollbar - ktorý umožňuje spojite meniť hodnoty vo zvolenom intervale. Na ne sa môžeme odvolať parametrom Position - ktorý vráti aktuálnu pozíciu posuvníka.

Výsledok projektu predstavuje obrázok:

RIEŠENIE:
Do prázdneho formuláru položíme "grafickú plochu" -
komponent Image z palety komponentov Additional. Dalej do formuláru položíme 3 komponenty ScrollBar z palety Standard a pridajme im návestia Label:

Zadefinujte novú metódu formuláru, napr. ZmenVsetko

procedure TForm1.ZmenVsetko; 
begin 
  Form1.Color:=RGB(ScrollBar1.Position, 
                   ScrollBar2.Position, 
                   ScrollBar3.Position); 
  Label1.Caption:='Red='+IntToStr(ScrollBar1.Position); 
  Label2.Caption:='Green='+IntToStr(ScrollBar2.Position); 
  Label3.Caption:='Blue='+IntToStr(ScrollBar3.Position); 
end; 

V Objektovom inšpektore zadefinujme každému ScrollBaru udalosť OnChange. Zmeny každého ScrollBaru vyvolajú metódu ZmenVsetko

m

procedure TForm1.ScrollBar1Change(Sender: TObject); 
begin 
  ZmenVsetko; 
end;





Posuvná lišta - TrackBar      Nahor

Analogickú funkciu, akú má scroolbar, má aj komponent Tracbar. Je vhodnejší pri presných nastaveniach číselných hodnôt z daného intervalu.

Vybereme komponent posuvná lišta - TrackBar z palety komponentov, položme ho do formulára a prispôsobme jeho veľkosť. V Objektovom inšpektore si nastavme hodnoty Min a Max.

Pri jeho posúvaní vznikne udalosť OnChange - aktuálnu hodnotu na lište môžeme zistiť stavovou premennou Position. Naprogramujeme udalosť OnChange pre zmenu hrúbky pera:


procedure TForm1.TrackBar1Change(Sender: TObject); 
begin 
  g.Pen.Width:=TrackBar1.Position; 
end;





Úlohy na riešenie      Nahor


1. Zmeňte úvodný projekt tak, aby sa menila farba prázdnej malej grafickej plochy (nie formulára) podobne, ako to býva zvykom v grafických editoroch, kde sa vybraná - aktuálna farba zobrazí v malom okienku. (Grafická plocha môže mať malé rozmery.)

2. Vytvorte projekt, ktorý na grafickej ploche vykreslí N štvorcov so zväčšujúcou sa stranou. Prírastok strany štvorca je určený hustotou nastaviteľnou užívateľom pomocou posuvníka a počet štvorcov určuje užívateľ v editovacom okne. Súčasťou projektu je tlačidlo pre zmazanie grafickej plochy.
3. Vytvorte projekt, ktorý na grafickej ploche vykreslí plot z N "latiek" so zväčšujúcou sa výškou podľa fukcie sinus. Hustota latiek je nastaviteľná užívateľom pomocou posuvníka a počet latiek určuje užívateľ v editovacom okne. Projekt môžete doplniť o posuvník pre hrúbku latiek. Súčasťou projektu je tlačidlo pre zmazanie grafickej plochy.
4. Vytvorte projekt, ktorý na grafickej ploche vykreslí kruhovú špirálu s nastaviteľnou hustotou a hrúbkou čiary. Hustota aj hrúbka čiary je nastaviteľná užívateľom pomocou posuvníkov v reálnych intervaloch hodnôt. Súčasťou projektu je tlačidlo pre zmazanie grafickej plochy.

Edit a label Obsah Timer