Výukový program Java Swing: Ako vytvoriť GUI v jazyku Java s príkladmi

Obsah:

Anonim

Čo je to Swing v Jave?

Swing in Java je sada nástrojov grafického používateľského rozhrania (GUI), ktorá obsahuje komponenty grafického používateľského rozhrania. Swing poskytuje bohatú sadu widgetov a balíkov na výrobu sofistikovaných komponentov GUI pre aplikácie Java. Swing je súčasťou Java Foundation Classes (JFC), čo je API pre programy Java, ktoré poskytujú GUI.

Knižnica Java Swing je postavená na vrchole súboru Java Abstract Widget Toolkit ( AWT ), staršej súpravy nástrojov GUI závislej na platforme. Z knižnice môžete používať programovacie komponenty Java GUI, ako sú tlačidlá, textové schránky atď., A nemusíte tieto komponenty vytvárať úplne od začiatku.

V tomto výučbe Java Swing sa naučíte -

  • Čo je to Swing v Jave?
  • Čo je to trieda kontajnera?
  • Čo je GUI v Jave?
  • Príklad grafického používateľského rozhrania Java
  • Správca rozloženia Java
  • Java BorderLayout
  • Java FlowLayout
  • Java GridBagLayout

Hierarchický diagram triedy Java Swing

Diagram hierarchie triedy Java Swing

Všetky komponenty v Java Swing sú JComponent, ktoré je možné pridať do tried kontajnerov.

Čo je to trieda kontajnera?

Triedy kontajnerov sú triedy, ktoré môžu obsahovať ďalšie komponenty. Takže na vytvorenie Java GUI potrebujeme aspoň jeden kontajnerový objekt. Existujú 3 typy kontajnerov Java Swing.

  1. Panel : Je to čistý kontajner a nie je to okno ako také. Jediným účelom panelu je usporiadať komponenty do okna.
  2. Rám : Je to plne funkčné okno s názvom a ikonami.
  3. Dialóg : Dá sa to predstaviť ako vyskakovacie okno, ktoré sa otvorí, keď sa má zobraziť správa. Nie je to plne funkčné okno ako rám.

Čo je GUI v Jave?

GUI (Graphical User Interface) v Java je ľahko použiteľný nástroj na vytváranie vizuálnych zážitkov pre aplikácie Java. Vyrába sa hlavne z grafických komponentov, ako sú tlačidlá, štítky, okná atď., Prostredníctvom ktorých môže používateľ interagovať s aplikáciou. GUI hrá dôležitú úlohu pri vytváraní ľahkých rozhraní pre aplikácie Java.

Príklad grafického používateľského rozhrania Java

V tomto výučbovom programe Java Swing si teraz poďme predstaviť grafické rozhranie s príkladmi Java Swing.

Príklad : Naučiť sa programovanie Java GUI v tomto výučbe Java GUI Krok 1) Skopírujte nasledujúci kód do editora

import javax.swing.*;class gui{public static void main(String args[]){JFrame frame = new JFrame("My First GUI");frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setSize(300,300);JButton button = new JButton("Press");frame.getContentPane().add(button); // Adds Button to content pane of frameframe.setVisible(true);}}

Krok 2) Uložte, kompilujte a spustite kód.Krok 3) Teraz pridajme do nášho rámu tlačidlo. Skopírujte nasledujúci kód do editora z daného príkladu Java GUI

import javax.swing.*;class gui{public static void main(String args[]){JFrame frame = new JFrame("My First GUI");frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setSize(300,300);JButton button1 = new JButton("Press");frame.getContentPane().add(button1);frame.setVisible(true);}}

Krok 4) Spustite kód. Dostanete veľké tlačidlo

Krok 5) Čo tak pridať dve tlačidlá? Skopírujte nasledujúci kód do editora.

import javax.swing.*;class gui{public static void main(String args[]){JFrame frame = new JFrame("My First GUI");frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setSize(300,300);JButton button1 = new JButton("Button 1");JButton button2 = new JButton("Button 2");frame.getContentPane().add(button1);frame.getContentPane().add(button2);frame.setVisible(true);}}

Krok 6) Uložte, kompilujte a spustite program.Krok 7) Neočakávaný výstup =? Tlačidlá sa prekrývajú.

Správca rozloženia Java

Správca rozloženia sa používa na rozloženie (alebo usporiadanie) komponentov Java GUI vo vnútri kontajnera. Existuje veľa správcov rozloženia, ale najčastejšie používané sú -

Java BorderLayout

A BorderLayoutumiestňuje komponenty až na päť oblastí: hornú, spodnú, ľavú, pravú a stredovú. Je to predvolený správca rozloženia pre každý java JFrame

Java FlowLayout

FlowLayoutje predvolený správca rozloženia pre všetky JPanel. Jednoducho rozloží komponenty v jednom rade za sebou.

Java GridBagLayout

Je to prepracovanejšie zo všetkých usporiadaní. Zarovnáva komponenty tým, že ich umiestňuje do mriežky buniek, čo umožňuje, aby komponenty pokrývali viac ako jednu bunku.

Krok 8) Čo tak vytvoriť rámec rozhovoru, ako je uvedené nižšie?

Skôr ako sa pozriete na program uvedený nižšie, skúste si sami naprogramovať kód.

//Usually you will require both swing and awt packages// even if you are working with just swings.import javax.swing.*;import java.awt.*;class gui {public static void main(String args[]) {//Creating the FrameJFrame frame = new JFrame("Chat Frame");frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setSize(400, 400);//Creating the MenuBar and adding componentsJMenuBar mb = new JMenuBar();JMenu m1 = new JMenu("FILE");JMenu m2 = new JMenu("Help");mb.add(m1);mb.add(m2);JMenuItem m11 = new JMenuItem("Open");JMenuItem m22 = new JMenuItem("Save as");m1.add(m11);m1.add(m22);//Creating the panel at bottom and adding componentsJPanel panel = new JPanel(); // the panel is not visible in outputJLabel label = new JLabel("Enter Text");JTextField tf = new JTextField(10); // accepts upto 10 charactersJButton send = new JButton("Send");JButton reset = new JButton("Reset");panel.add(label); // Components Added using Flow Layoutpanel.add(tf);panel.add(send);panel.add(reset);// Text Area at the CenterJTextArea ta = new JTextArea();//Adding Components to the frame.frame.getContentPane().add(BorderLayout.SOUTH, panel);frame.getContentPane().add(BorderLayout.NORTH, mb);frame.getContentPane().add(BorderLayout.CENTER, ta);frame.setVisible(true);}}