GUI v Javě

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
(Zrušena verze 315 od uživatele Spravce (diskuse))
(Textová pole, tlačítka: Doplnění metod textového pole)
Řádka 47: Řádka 47:
 
Nejběžnější komponenty jsou:
 
Nejběžnější komponenty jsou:
 
* tlačítka (<code>JButton</code>),
 
* tlačítka (<code>JButton</code>),
** parametrem konstruktoru je text na tlačítku.
 
 
* textová pole (<code>JTextField</code>),
 
* textová pole (<code>JTextField</code>),
** volitelným parametrem konstruktoru je délka pole, vyjádřená jako počet znaků.
 
 
* popisky (<code>JLabel</code>).
 
* popisky (<code>JLabel</code>).
  
Řádka 55: Řádka 53:
 
* panely (<code>JPanel</code>).
 
* panely (<code>JPanel</code>).
  
Příklad
+
=== <code>JButton</code> ===
 +
* <code>JButton(String popisTlacitka)</code>
 +
** text na tlačítku zadáme jako parametr konstruktoru
 +
**: <code>JButton tlStart = new JButton("Start");</code>
 +
* reakci na stisk tlačítka nastavíme [[#Zpracování událostí, posluchač | přiřazením posluchače viz dále]]
 +
 
 +
=== <code>JLabel</code> ===
 +
* <code>JLabel(String textPopisu)</code>
 +
** text popisky zadáme jako parametr konstruktoru
 +
**: <code>JLabel lCisloA = new JLabel("Zadejte číslo A:");</code>
 +
* reakci na stisk tlačítka nastavíme [[#Zpracování událostí, posluchač | přiřazením posluchače viz dále]]
 +
 
 +
=== <code>JTextField</code> ===
 +
* <code>JTextField(int pocetZnaku)</code>
 +
** volitelným parametrem konstruktoru je délka pole, vyjádřená početem znaků, které do pole vlezou.
 +
* <code>String getText()</code>
 +
** vrací aktuální text v textovém poli
 +
* <code>setText(String text)</code>
 +
** nastaví do textového pole zadaný text
 +
 
 +
Pokud potřebujete z textového pole načíst číslo, můžete použít následující metodu:
 +
<code>
 +
    /**
 +
    * Získá číslo z textového pole
 +
    *
 +
    * @param textovePole Textové pole, jehož hodnota se má převést na číslo
 +
    * @return Vrátí hodnotu čísla, zapsaného v textovém poli.
 +
    *    Pokud text v poli nelze převést na číslo (pole je prázdné apod.),
 +
    *      vrátí 0
 +
    *      a navíc do textového pole zapíše výzvu k vložení čísla.    */
 +
    private int ziskejCislo(JTextField textovePole) {
 +
        int vysledek;
 +
        try {
 +
            vysledek = Integer.parseInt(textovePole.getText());
 +
        } catch (NumberFormatException e) {
 +
            textovePole.setText("Nastavte platné číslo!");
 +
            vysledek = 0;
 +
        }
 +
        return vysledek;
 +
    }
 +
</code>
 +
 
 +
=== Příklad ===
 
* Vytvořte okno s jediným tlačítkem.
 
* Vytvořte okno s jediným tlačítkem.
 
* Na tlačítku bude text „Superokno!“
 
* Na tlačítku bude text „Superokno!“

Verze z 19. 6. 2011, 20:43


Následující poznámky jsou jen velmi stručnou osnovou. Možností při vytváření grafického rozhraní je mnohem více. Pokud chcete více než jen minimalistický návod, doporučuji: tutoriál ze stránek Oracle.com

Obsah

Vytvoření okna

Třída JFrame:

Vlastnosti okna

Velikost okna

Zobrazení okna

Vkládání komponent do okna

Vložení komponenty do okna

Příklad

Textová pole, tlačítka

Do okna vkládáme součásti (komponenty). Komponenty jsou potomky třídy JComponent.

Nejběžnější komponenty jsou:

Je-li komponent v okně mnoho, můžeme je uspořádat na

JButton

JLabel

JTextField

Pokud potřebujete z textového pole načíst číslo, můžete použít následující metodu:

   /**
    * Získá číslo z textového pole
    *
    * @param textovePole Textové pole, jehož hodnota se má převést na číslo
    * @return Vrátí hodnotu čísla, zapsaného v textovém poli.
    *     Pokud text v poli nelze převést na číslo (pole je prázdné apod.),
    *      vrátí 0
    *      a navíc do textového pole zapíše výzvu k vložení čísla.     */
   private int ziskejCislo(JTextField textovePole) {
       int vysledek;
       try {
           vysledek = Integer.parseInt(textovePole.getText());
       } catch (NumberFormatException e) {
           textovePole.setText("Nastavte platné číslo!");
           vysledek = 0;
       }
       return vysledek;
   }

Příklad

Zpracování událostí, posluchač

Layout Manager

Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje