Шта је Свинг у Јави?
Свинг ин Јава је комплет алата за графички кориснички интерфејс (ГУИ) који укључује компоненте ГУИ-а. Свинг нуди богат сет виџета и пакета за израду софистицираних ГУИ компоненти за Јава апликације. Свинг је део Јава Фоундатион Цлассес (ЈФЦ), који је АПИ за Јава програме који пружају ГУИ.
Библиотека Јава Свинг изграђена је на врху Јава Абстрацт Видгет Тоолкит-а ( АВТ ), старијег, ГУИ алата који зависи од платформе. Можете користити Јава ГУИ компоненте за програмирање попут дугмета, оквира за текст итд. Из библиотеке и не морате их креирати од нуле.
У овом упутству за Јава Свинг научићете-
- Шта је Свинг у Јави?
- Шта је класа контејнера?
- Шта је ГУИ у Јави?
- Пример Јава ГУИ-а
- Јава Лаиоут Манагер
- Јава БордерЛаиоут
- Јава ФловЛаиоут
- Јава ГридБагЛаиоут
Дијаграм хијерархије класе Јава Свинг

Све компоненте у Јава Свинг-у су ЈЦомпонент које се могу додати у класе контејнера.
Шта је класа контејнера?
Класе контејнера су класе које на себи могу имати и друге компоненте. Дакле, за креирање Јава ГУИ-а потребан нам је најмање један објекат контејнера. Постоје 3 врсте Јава Свинг контејнера.
- Панел : То је чисти контејнер и сам по себи није прозор. Једина сврха панела је да организује компоненте на прозору.
- Оквир : То је потпуно функционални прозор са насловом и иконама.
- Дијалог : Може се замислити као искачући прозор који искочи када порука треба да се прикаже. То није потпуно функционални прозор попут Фраме-а.
Шта је ГУИ у Јави?
ГУИ (графички кориснички интерфејс) у Јави је једноставан за израду визуелног искуства за Јава апликације. Углавном је направљен од графичких компонената попут дугмади, налепница, прозора итд. Путем којих корисник може да комуницира са апликацијом. ГУИ игра важну улогу у изградњи једноставних интерфејса за Јава апликације.
Пример Јава ГУИ-а
Сада у овом упутству за Свинг Јава, хајде да разумемо ГУИ са примерима Јава Свинга.
Пример : Да бисте научили Јава ГУИ програмирање у овом упутству за Јава ГУИ Корак 1) Копирајте следећи код у едитор
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);}}
Корак 2) Спремите, компајлирајте и покрените код.Корак 3) Хајде сада да додамо дугме нашем оквиру. Копирајте следећи код у уређивач из датог Јава ГУИ примера
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);}}
Корак 4) Извршите код. Добићете велико дугме
Корак 5) Шта кажете на додавање два дугмета? Копирајте следећи код у едитор.
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);}}
Корак 6) Спремите, компајлирајте и покрените програм.Корак 7) Неочекивани излаз =? Дугмад се преклапају.
Јава Лаиоут Манагер
Менаџер распореда користи се за распоред (или уређивање) ГУИ компоненти Јава унутар контејнера. Постоји много менаџера за распоред, али најчешће коришћени су-
Јава БордерЛаиоут
АBorderLayout
поставља компоненте у до пет области: горе, доле, лево, десно и у центар. То је подразумевани менаџер распореда за сваки јава ЈФраме
Јава ФловЛаиоут
FlowLayout
је задати менаџер изгледа за сваки JPanel
. Једноставно распоређује компоненте у један ред један за другим.
Јава ГридБагЛаиоут
То је софистициранији од свих распореда. Поравнава компоненте тако што их ставља у мрежу ћелија, омогућавајући компонентама да се протежу на више од једне ћелије.
Корак 8) Шта кажете за стварање оквира за ћаскање као у наставку?
Покушајте да се кодирате пре него што погледате програм испод.
//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);}}