Koreňom hierarchie je abstraktná trieda Component, predstavujúca univerzálny objekt, ktorý má nejakú grafickú reprezentáciu, môže byť zobrazený na obrazovke a dokáže interagovať s používateľom.
V triede Component nájdeme obrovské množstvo metód. Pozrieme sa na tie najdôležitejšie:
- get*() a set*() - slúžia na získanie a nastavenie hodnoty nejakého atribútu
- setVisible()/setEnabled() - nastavujú viditeľnosť a prístupnosť komponentu
- (get|set)Foreground() a (get|set)Background() - získanie a nastavenie farby popredia, resp. pozadia komponentu
- (get|set)Font() – font použitý v komponente
- (get|set)Size() – rozmery komponentu
- getX()/getY() – súradnice ľavého horného rohu
komponentu
- getWidth()/getHeight() – šírka/výška komponentu
- paint()- vykreslí komponent
- update()- obnoví obsah komponentu (zmaže pozadie a zavolá metódu paint())
- repaint()- zavolá, čo najskôr metódu update() [4]
Potomkovia triedy Component predstavujú klasické ovládacie prvky. Medzi najpoužívanejšie patria nasledujúce, ktoré si zatiaľ len slovne opíšeme.
Trieda Label (nadpis) používa sa na zobrazenie needitovateľného textu. Pri jeho konštrukcii môžeme zadať, či má byť zarovnaný na ľavý okraj, na stred alebo na pravý okraj. S textom pracujeme pomocou metód (get|set)Text(), so zarovnaním pomocou (get|set)Alignment(). [4]
Trieda Button reprezentuje tlačidlo, ktoré obsahuje voliteľný text, a ktoré možno stlačiť pomocou myši alebo klávesnice. S textom na tlačidle pracujeme pomocou metód (get|set)Label() a ohlas na stlačenie tlačidla zabezpečí príslušný listener, ktorý pridávame a odoberáme metódami (add|remove) ActionListener(). [4]
Trieda Checkbox predstavuje dvojstavové zaškrtávacie pole s voliteľným textom. Tento text sprístupňuje dvojica metód (get|set)Label(), stav poľa zase dvojica metód (get|set)State(). Zmenu stavu poľa môže registrovať listener, ktorý pridávame a odoberáme metódami (add|remove)ItemListener().
Objekty Checkbox môžu byť združované do skupín, reprezentovaných objektmi triedy CheckboxGroup – vtedy sa z nich stávajú prepínače (radio buttons). Pomocou metód (get|set)SelectedCheckbox() máme prístup k aktuálne zvolenému prepínaču. [4]
Rozbaľovací (drop-down) zoznam reťazových položiek reprezentuje trieda Choice. Položky sa do zoznamu pridávajú metódami add() a insert(), odoberajú sa pomocou remove(). Položku s daným indexom môžeme získať metódou getItem(). Index aktuálne vybranej položky vracia metóda getSelectedIndex(), vybranú položku ako reťazec získame pomocou getSelectedItem(). Metódou select() môžeme nastaviť, ktorá položka bude vybraná a dvojica metód (add|remove)ItemListener() slúži na pridanie/odobranie listenerov [4].
Ďalšia trieda TextComponent je spoločným predkom komponentov určených na editáciu textu. S textom ako celkom možno pracovať pomocou metód (get|set)Text().
Od triedy TextComponent sú odvodené dve ďalšie triedy: TextField a TextArea. Prvá z nich predstavuje klasické jednoriadkové textové pole. Pri jeho konštrukcii môžeme zadať počiatočný obsah a šírku poľa v znakoch.
Druhá trieda, TextArea, reprezentuje viacriadkové textové editačné pole s možnosťou automatického zobrazovania posuvníkov, ak je obsah dlhší ako rozmery poľa. Pri konštrukcii môžeme zadať rozmery poľa. Pomocou metód insert() a append() môžeme text do poľa pridávať, metóda replaceRange() poskytuje možnosť nahradiť vybraný úsek textu iným reťazcom [4].