Java - Grafické rozhraní (35.díl)

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

Java, grafické uživatelské rozhraní

Programovací jazyk Java obsahuje disponuje grafickým uživatelským rozhraním (Graphic User Interface) nezávislým na zařízení. Grafické operace poskytují stejné výsledky bez ohledu na typ počítače či používaný operační systém. Tato vlastnost je v Javě velmi důležitá, uplatňuje se při tvorbě okenních aplikací, jejichž vzhled je pod různými operačními systémy (velmi) podobný. Pro vývoj GUI aplikací není nutné mít k dispozici žádné vývojové prostředí, vizuální komponenty lze vytvářet poměrně jednoduše zápisem zdrojového kódu. Práce ve vývojovém prostředí je příjemnější a pohodlnější, umožňuje vytvořit grafické
uživatelské rozhraní bez nutnosti zápisu kódu metodou drag and drop. V této kapitole se budeme zabývat první variantou.

Grafické uživatelské rozhraní. V našich aplikací můžeme používat řadu vizuálních komponent: formuláře, tlačítka, přepínače, dialogy, grafické komponenty, multimediální komponenty, tiskové komponenty. Tyto komponenty tvoří rozhraní aplikace, umožňují vzájemnou komunikaci mezi uživatelem a aplikací (zadávání dat nebo znázorňování výsledků různých výpočetních či grafických operací). Popsaný přístup je pro Javu přirozenější, práce s formátovaným vstupem či v konzoli není na rozdíl od C/C++ pro Javu typická.

Výhodou práce s GUI je snadnější ovladatelnost, přehlednost, názornost. Při návrhu grafického uživatelského rozhraní je nutno zohlednit, že aplikace se nemá přizpůsobovat uživateli a nikoliv uživatel aplikaci. Typy grafckých rozhraní v Javě. Java disponuje dvěma grafckými rozhraními. Starší z nich, AWT (Abstract Windows Toolkit), se již používá jen výjimečně (applety). Jeho nevýhodou byla značná náročnost na hardware a nepříliš pěkný vzhled (subjektivní, leč rozšířené tvrzení), výhodou podpora prakticky všech browserů, AWT rozhraní je vláknově zabezpečené. Aplikace přejímala vzhled OS, na kterém běžela.
Toto rozhraní bylo nahrazeno rozhraním JFC (Java Foundation Classes) obsahujícím jak vizuální, tak nevizuální komponenty. Nevizuální komponenty nazýváme Java Beans (kávové boby), vizuální komponenty představují grafické rozhraní Swing.

Swing je bohatší na komponenty, vychází však z AWT. Využívá stejné události, je postaven na podobných komponentách, práce s oběma rozhraními je více-méně analogická. Rozhraní Swing je rychlejší, nevýhodou je fakt, že ho neumí zobrazit korektně všechny browsery, je vláknově nezabezpečené. Vzhled aplikací a jejich komponent běžících nad rozhraním Swing může být měněn, aplikace nemusí přejímat vzhled OS.

Názvy tříd. Názvy tříd v knihovně AWT představující komponenty (Button, Table, Frame, ...) se liší od názvů tříd v rozhraní Swing a to přidáním písmene J (JButton, JTable, JFrame,...) V této kapitole se budeme zabývat popisem rozhraní Swing. V českém jazyce existuje velmi málo materiálů zabývajících se touto problematikou, podrobné informace o rozhraní Swing lze nalézt na stránkách společnosti Sun: http://java.sun.com/docs/books/tutorial/
uiswing/index.html


Událostmi řízené programování. Tento způsob programování je značně odlišný od přístupu, který jsme doposud používali. Program je tvořen řadou různých grafických komponent, které jsou za jeho běhu zobrazovány. Událost (event) vzniká činností uživatele, programu nebo OS (stisk, posun myši, klávesy, maximalizace, minimalizace, zavření okna, změna rozměrů okna, stisk tlačítka, překreslení obrazovky, ...).
Každá z vizuálních komponent má vlastní události, na které můžeme reagovat, tzv. je obsloužit. Obslužný kód je psán do metod, které nazýváme handlery. Tento způsob programování nazýváme událostmi řízeným programováním.

Vytvoření aplikace zpravidla představuje
  • Navržení a vytvoření grafické rozhraní. Rozhraní je tvořeno jednotlivými komponentami.
  • Zajištění možnosti ukončení programu.
  • Definice události, které mají být v programu obslouženy, a zápis kódu pro jejich obsluhu formou handleru.

    Upozorněme, že návrh grafického rozhraní by měl být vždy oddělen od výkonné části programu. Tuto zásadu budeme ještě několikrát opakovat.

    Základní komponenty a události

    Dále se seznámíme s některými často používanými vizuálními komponentami knihovny Swing a událostmi s nimi spojenými. Popis všech komponent by vydal na samostatnou knihu, nebudeme ho proto uvádět.

    Nejprve je nutno importovat balíček javax.swing.*.
    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 sedm a jedenáct