Što je Swing u Javi?
Swing in Java je alatni program za grafičko korisničko sučelje (GUI) koji uključuje komponente GUI-ja. Swing nudi bogat set widgeta i paketa za izradu sofisticiranih GUI komponenata za Java programe. Swing je dio Java Foundation Classes (JFC), koji je API za Java programe koji pružaju GUI.
Biblioteka Java Swing izgrađena je na vrhu Java Abstract Widget Toolkita ( AWT ), starijeg GUI alata koji ovisi o platformi. Možete koristiti programske komponente Java GUI poput gumba, okvira za tekst itd. Iz knjižnice i ne morate ih stvarati od nule.
U ovom uputstvu za Java Swing naučit ćete-
- Što je Swing u Javi?
- Što je klasa kontejnera?
- Što je GUI u Javi?
- Primjer Java Java-a
- Upravitelj Java izgleda
- Java BorderLayout
- Java FlowLayout
- Java GridBagLayout
Dijagram hijerarhije klase Java Swing
![](https://cdn.css-code.org/8041302/java_swing_tutorial_how_to_create_a_gui_in_java_with_examples.jpg.webp)
Sve komponente u Java Swingu su JComponent koje se mogu dodati u klase spremnika.
Što je klasa kontejnera?
Klase spremnika su klase koje na sebi mogu imati druge komponente. Dakle, za stvaranje Java GUI-a potreban nam je barem jedan objekt spremnika. Postoje 3 vrste Java Swing spremnika.
- Panel : To je čisti spremnik i sam po sebi nije prozor. Jedina svrha ploče je organiziranje komponenata na prozor.
- Okvir : To je potpuno funkcionalni prozor sa svojim naslovom i ikonama.
- Dijalog : To se može zamisliti kao skočni prozor koji iskoči kad se poruka mora prikazati. To nije potpuno funkcionalni prozor poput okvira.
Što je GUI u Javi?
GUI (grafičko korisničko sučelje) u Javi je jednostavan za korištenje alata za izradu vizualnog iskustva za Java programe. Uglavnom se sastoji od grafičkih komponenata poput gumba, naljepnica, prozora itd. Putem kojih korisnik može komunicirati s aplikacijom. GUI igra važnu ulogu u izgradnji jednostavnih sučelja za Java programe.
Primjer Java Java-a
Sada u ovom vodiču za Swing Java, shvatimo GUI s primjerima Java Swinga.
Primjer : Da biste naučili Java GUI programiranje u ovom Java GUI tutorialu 1. korak) Kopirajte sljedeći kôd u editor
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);}}
Korak 2) Spremite, prevedite i pokrenite kôd.Korak 3) Dodajmo sada gumb u naš okvir. Kopirajte sljedeći kod u uređivač iz zadanog Java GUI Primjera
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);}}
Korak 4) Izvršite kod. Dobit ćete veliki gumb
Korak 5) Što kažete na dodavanje dva gumba? Kopirajte sljedeći kod u editor.
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);}}
Korak 6) Spremite, prevedite i pokrenite program.Korak 7) Neočekivani izlaz =? Gumbi se preklapaju.
Upravitelj Java izgleda
Upravitelj izgleda koristi se za raspored (ili uređivanje) GUI Java komponenti unutar spremnika. Postoji mnogo upravitelja izgleda, ali najčešće korišteni su-
Java BorderLayout
ABorderLayout
postavlja komponente u do pet područja: gore, dolje, lijevo, desno i središte. To je zadani upravitelj izgleda za svaki java JFrame
Java FlowLayout
FlowLayout
je zadani upravitelj izgleda za svaki JPanel
. Jednostavno raspoređuje komponente u jednom redu jednu za drugom.
Java GridBagLayout
To je sofisticiraniji od svih izgleda. Poravnava komponente stavljajući ih u mrežu ćelija, omogućujući komponentama da se protežu na više od jedne stanice.
Korak 8) Što kažete na stvaranje okvira za chat kao u nastavku?
Pokušajte se kodirati prije nego što pogledate program u nastavku.
//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);}}