Kas yra „Swing“ Java?
„Swing in Java“ yra grafinės vartotojo sąsajos (GUI) įrankių rinkinys, kuriame yra GUI komponentai. „Swing“ suteikia gausų valdiklių ir paketų rinkinį, kad būtų galima sukurti sudėtingus „Java“ programų GUI komponentus. „Swing“ yra „Java Foundation Classes“ (JFC) dalis, kuri yra „Java“ programų, teikiančių GUI, API.
„Java Swing“ biblioteka sukurta ant „Java Abstract Widget Toolkit“ ( AWT ), senesnio, nuo platformos priklausančio GUI įrankių rinkinio. Galite naudoti „Java“ GUI programavimo komponentus, tokius kaip mygtukas, teksto laukelis ir kt., Iš bibliotekos ir nereikia kurti komponentų nuo nulio.
Šioje „Java Swing“ pamokoje sužinosite
- Kas yra „Swing“ Java?
- Kas yra konteinerių klasė?
- Kas yra „Java“ GUI?
- „Java“ GUI pavyzdys
- „Java Layout Manager“
- „Java BorderLayout“
- „Java FlowLayout“
- „Java GridBagLayout“
„Java Swing“ klasės hierarchijos diagrama
Visi „Java Swing“ komponentai yra „JComponent“, kuriuos galima pridėti prie konteinerių klasių.
Kas yra konteinerių klasė?
Konteinerių klasės yra klasės, kuriose gali būti kitų komponentų. Taigi, norint sukurti „Java“ GUI, mums reikia bent vieno konteinerio objekto. Yra 3 „Java Swing“ konteinerių tipai.
- Skydelis : tai grynas indas ir nėra pats langas. Vienintelis skydo tikslas yra sudėti komponentus į langą.
- Rėmas : tai visiškai veikiantis langas su pavadinimu ir piktogramomis.
- Dialogas : Tai gali būti laikoma iššokančiuoju langu, kuris pasirodo tada, kai reikia rodyti pranešimą. Tai nėra visiškai veikiantis langas, kaip kadras.
Kas yra „Java“ GUI?
„GUI“ (grafinė vartotojo sąsaja) „Java“ yra lengvai naudojamas „Java“ programų vizualinės patirties kūrėjas. Jis daugiausia sudarytas iš grafinių komponentų, tokių kaip mygtukai, etiketės, langai ir kt., Per kuriuos vartotojas gali bendrauti su programa. GUI vaidina svarbų vaidmenį kuriant paprastas „Java“ programų sąsajas.
„Java“ GUI pavyzdys
Dabar šiame „Swing Java“ pamokoje supraskime GUI su „Java Swing“ pavyzdžiais.
Pavyzdys : Norėdami išmokti Java GUI programavimo šioje „Java GUI“ pamokoje 1 žingsnis. Nukopijuokite šį kodą į redaktorių
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 žingsnis) Išsaugokite, kompiliuokite ir paleiskite kodą.3 žingsnis) Dabar pridėkime mygtuką prie savo rėmo. Nukopijuokite šį kodą į redaktorių iš pateikto „Java“ GUI pavyzdžio
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 žingsnis) Atlikite kodą. Gausite didelį mygtuką
5 žingsnis) Kaip pridėti du mygtukus? Nukopijuokite šį kodą į redaktorių.
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 žingsnis) Išsaugokite, kompiliuokite ir paleiskite programą.7 žingsnis) Netikėta išvestis =? Mygtukai sutampa.
„Java Layout Manager“
Išdėstymo tvarkyklė naudojama išdėstyti (arba sutvarkyti) GUI „Java“ komponentus konteinerio viduje. Yra daug maketavimo tvarkyklių, tačiau dažniausiai naudojami -
„Java BorderLayout“
ABorderLayout
vietų komponentai iki penkių sričių: viršuje, apačioje, kairėje, dešinėje ir centre. Tai yra numatytasis kiekvienos „Java“ „JFrame“ maketo tvarkytuvas
„Java FlowLayout“
FlowLayout
yra numatytasis kiekvieno maketo tvarkytuvas JPanel
. Jis paprasčiausiai išdėsto komponentus vienoje eilėje vienas po kito.
„Java GridBagLayout“
Tai yra sudėtingesnė visų maketų. Jis sulygiuoja komponentus įdėdamas juos į ląstelių tinklelį, leidžiant komponentams apimti daugiau nei vieną langelį.
8 žingsnis) Kaip sukurti pokalbio rėmelį, kaip nurodyta toliau?
Prieš žiūrėdami į toliau pateiktą programą, pabandykite susikurti kodą.
//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);}}