Java - Grafické komponenty (47.díl)

Napsal O webu (») 25. 7. 2008 v kategorii Programování, přečteno: 4168×
obrazky/java_logo.png

Modely v Javě

V GUI Javy je často využívaným postupem práce s modelem. Model představuje implementaci nějakého rozhraní jinou (např. grafickou) třídou. Přes toto rozhraní přistupuje grafická třída ke svým metodám. Použití modelů umožňuje důsledně oddělit grafický návrh aplikace od funkční části.
Modely se používají nejen pro práci s grafikou, setkáme se s nimi i při manipulacích s běžnými komponentami. Koncept rozhraní v Javě je tvořen třemi skupinami rozhraní:
  • Základní rozhraní
  • Abstraktní implementace rozhraní
  • Výchozí implementace rozhraní
    Základní rozhraní pro práci s modely představují např. TableModel, ListModel, ... Abstraktní implementace (implementace rozhraní abstraktní třídou) používáme v případech, kdy chceme předefinovávat funkcionalitu rozhraní (např. AbstractTableModel), výchozí implementaci rozhraní (implementace rozhraní neabstraktní třídou) v případech, kdy funkcionalitu rozhraní neměníme např. DefaultTableModel). Problematika modelů v Javě jde nad rámec základního kurzu, proto se o ní zmiňujeme pouze velmi stručně.

    Modely umožňují také pracovat s událostmi. Pokud dojde k jakékoliv změně v datech modelu, je tato informace oznámena všem zaregistrovaným posluchačům. Modely se používají často při práci s následujícími komponentami:
  • JList (Seznam)
  • JTable (Tabulka)
  • JTree (Strom)

    Uveďme pro úplnost, že s těmito komponentami můžeme pracovat i klasicky, tj. bez použití modelů.

    Přehled nejpoužívanějších komponent

    V této části se seznámíme s nejčastěji používanými vizuálními komponentami a jejich událostmi. Jsou potomky třídy javax.Swing.*, kromě této třídy musíme připojit i třídu java.awt.event.*. Název komponenty začínající na písmeno J je současně i názvem třídy, kterou komponenta představuje. Zopakujme, že starší komponenty z rozhraní AWT mají podobné názvy, pouze nezačínají písmenkem J. Společnou vlastností všech komponent popsaných v kapitolách je to, že nemohou být zobrazeny samostatně. Není možné vytvořit
    program, který zobrazí pouze jednu komponentu (např. JLabel) bez hlavního okna.

    JLabel

    Tato komponenta je používána jako popis. Neobsahuje -li žádný text, je neviditelná. Komponentě lze nastavit barvu popředí nebo barvu pozadí. Standardně je v ní text zarovnán směrem vlevo. Většinou je používána jako komponenta statická, kdy zpravidla neošetřujeme jeho události, ale pouze s ním popisujeme jiné komponenty. Existují tři základní konstruktory třídy JLabel.
    JLabel();
    JLabel(String text);
    JLabel (String text, JLabel alignment);

    Zarovnání lze ovlivnit třemi konstantami:
    JLabel.LEFT
    Jlabel.RIGHT
    JLabel.CENTER
    JLabel.LEADING
    Jlabel.TRAILING.

    Přehled nejpoužívanějších metod spolu se stručným popisem jsou umístěny v následující tabulce.
    Metoda Popis
    setText() Nastavení textu zobrazovaného labelem
    getText() Získání textu zobrazovaného labelem.
    setHorizontalAlignment() Nastavení horizontálního zarovnání textu v labelu.
    getHorizontalAlignment() Získání horizontálního zarovnání textu v labelu.
    setVerticalAlignment() Nastavení vertikálního zarovnání textu v labelu.
    getVerticalAlignment() Získání vertikálního zarovnání textu v labelu.

    Praktické příklady uvádět nebudeme, použití JLabelu je triviální. Navíc jsme si práci s touto komponentou v předchozím textu již vyzkoušeli.
    Autor: Filip Koval
  • Štítky: Java
    Facebook Twitter Topčlánky.cz Linkuj.cz

    Komentáře

    Zobrazit: standardní | od aktivních | poslední příspěvky | všechno
    Článek ještě nebyl okomentován.


    Nový komentář

    Téma:
    Jméno:
    Notif. e-mail *:
    Komentář:
      [b] [obr]
    Odpovězte prosím číslicemi: Součet čísel čtyři a šest