Swing v javi je del osnovnega razreda Java, ki je lahek in neodvisen od platforme. Uporablja se za ustvarjanje aplikacij, ki temeljijo na oknih. Vključuje komponente, kot so gumb, drsni trak, besedilno polje itd. Sestavljanje vseh teh komponent naredi grafični uporabniški vmesnik. V tem članku bomo preučili koncepte, vključene v postopek gradnje aplikacij z uporabo swing-a . Sledijo koncepti, obravnavani v tem članku:
- Kaj je Java Swing?
- Razred kontejnerja
- Razlika med AWT in Swingom
- Hierarhija razreda Java Swing
- Upravitelj postavitve
- Primer-okvir za klepet
Kaj je Swing v Javi?
Swing in Java je lahka zbirka orodij za grafični uporabniški vmesnik, ki ima široko paleto pripomočkov za izdelavo optimiziranih okenskih aplikacij. Je del JFC (Java Foundation Classes). Zgrajen je nad API-jem AWT in v celoti napisan v . Za razliko od AWT je neodvisen od platforme in ima lahke komponente.
Graditi aplikacije je lažje, saj že imamo komponente GUI, kot so gumb, potrditveno polje itd. To je koristno, ker nam ni treba začeti od začetka.
Razred kontejnerja
Kaj ki vsebuje druge komponente, se imenuje kot razred vsebnika. Za izdelavo GUI aplikacij je potreben vsaj en razred vsebnika.
Sledijo tri vrste razredov vsebnikov:
Panel - Uporablja se za organiziranje komponent v okno
Okvir - popolnoma delujoče okno z ikonami in naslovi
Pogovorno okno - Je kot pojavno okno, vendar ni popolnoma funkcionalno kot okvir
Razlika med AWT in Swing
AWT | NJAVE |
|
|
|
|
|
|
|
|
|
|
Hierarhija razreda Java Swing
Pojasnilo : Vse komponente v zamahu, kot so JButton, JComboBox, JList, JLabel, so podedovane iz razreda JComponent, ki ga lahko dodamo v razrede vsebnikov. Posode so okna, kot so okvir in pogovorna okna. Osnovni nihajni sestavni deli so gradniki katere koli aplikacije gui. Metode, kot je setLayout, preglasijo privzeto postavitev v vsakem vsebniku. Vsebniki, kot sta JFrame in JDialog, lahko komponento dodajo samo sebi. Sledi nekaj komponent s primeri, da razumemo, kako jih lahko uporabimo.
Razred JButton
Uporablja se za ustvarjanje označenega gumba. Uporaba ActionListenerja bo povzročila nekaj dejanj, ko pritisnete gumb. Podeduje razred AbstractButton in je neodvisen od platforme.
Primer:
import javax.swing. * primer javnega razreda {public static void main (String args []) {JFrame a = new JFrame ('example') JButton b = new JButton ('click me') b.setBounds (40,90, 85,20) a.add (b) a.setSize (300.300) a.setLayout (null) a.setVisible (true)}}
Izhod:
kaj je optični bralnik
Razred JTextField
Podeduje razred JTextComponent in se uporablja za urejanje enovrstičnega besedila.
Primer:
import javax.swing. * primer javnega razreda {public static void main (String args []) {JFrame a = new JFrame ('example') JTextField b = new JTextField ('edureka') b.setBounds (50,100,200,30) a .add (b) a.setSize (300.300) a.setLayout (null) a.setVisible (true)}}
Izhod:
Razred JScrollBar
Uporablja se za dodajanje drsnega traku, tako vodoravnega kot navpičnega.
Primer:
kako zgraditi prodajno aplikacijo
import javax.swing. * primer razreda {primer () {JFrame a = nov JFrame ('primer') JScrollBar b = nov JScrollBar () b.setBounds (90,90,40,90) a.add (b) a. setSize (300,300) a.setLayout (null) a.setVisible (true)} public static void main (String args []) {nov primer ()}}
Izhod:
Razred JPanel
Podeduje razred JComponent in zagotavlja prostor za aplikacijo, ki lahko pripne katero koli drugo komponento.
import java.awt. * import javax.swing. * javni razred Primer {Primer () {JFrame a = new JFrame ('example') JPanel p = new JPanel () p.setBounds (40,70,200,200) JButton b = new JButton ('klikni me') b.setBounds (60,50,80,40) p.add (b) a.add (p) a.setSize (400,400) a.setLayout (null) a.setVisible (true)} public static void main (String args []) {nov primer ()}}
Izhod:
JMenu Clas s
Podeduje razred JMenuItem in je sestavni del spustnega menija, ki se prikaže v menijski vrstici.
import javax.swing. * Primer Primer {meni JMenu JMenuItem a1, a2 Primer () {JFrame a = nov JFrame ('Primer') meni = nov JMenu ('možnosti') JMenuBar m1 = nov JMenuBar () a1 = nov JMenuItem ( 'example') a2 = new JMenuItem ('example1') menu.add (a1) menu.add (a2) m1.add (menu) a.setJMenuBar (m1) a.setSize (400,400) a.setLayout (null) a .setVisible (true)} public static void main (String args []) {nov primer ()}}
Izhod:
Razred JList
Podeduje razred JComponent, objekt razreda JList predstavlja seznam besedilnih elementov.
import javax.swing. * javni razred Primer {Primer () {JFrame a = new JFrame ('example') DefaultListModel l = new DefaultListModel () l.addElement ('first item') l.addElement ('second item') JList b = nov JList (l) b.setBounds (100,100,75,75) a.add (b) a.setSize (400,400) a.setVisible (true) a.setLayout (null)} public static void main (String args [ ]) {nov primer ()}}
Izhod:
Razred JLabel
Uporablja se za polaganje besedila v posodo. Podeduje tudi razred JComponent.
import javax.swing. * javni razred Primer {public static void main (String args []) {JFrame a = new JFrame ('example') JLabel b1 b1 = new JLabel ('edureka') b1.setBounds (40,40, 90,20) a.add (b1) a.setSize (400.400) a.setLayout (null) a.setVisible (true)}}
Izhod:
Razred JComboBox
Podeduje razred JComponent in se uporablja za prikaz pojavnega menija z izbiro.
import javax.swing. * javni razred Primer {JFrame a Example () {a = new JFrame ('example') string courses [] = {'core java', 'advance java', 'java servlet'} JComboBox c = novo JComboBox (tečaji) c.setBounds (40,40,90,20) a.add (c) a.setSize (400,400) a.setLayout (null) a.setVisible (true)} public static void main (String args [] ) {nov primer ()}}
Izhod:
Upravitelj postavitve
Za razporeditev komponent znotraj vsebnika uporabljamo upravitelja postavitve. Sledi več upraviteljev postavitve:
Postavitev meje
Postavitev toka
kako nastaviti pot v javi -
Postavitev GridBag
Postavitev meje
Privzeti upravitelj postavitve za vsak JFrame je BorderLayout. Komponente postavi na največ pet mest, in sicer zgoraj, spodaj, levo, desno in sredino.
Postavitev pretoka
FlowLayout preprosto polaga komponente zaporedoma eno za drugo, je privzeti upravitelj postavitve za vsak JPanel.
Postavitev GridBag
GridBagLayout postavi komponente v mrežo, ki komponentam omogoča, da obsegajo več kot eno celico.
Primer: Chat Frame
import javax.swing. * import java.awt. * class class {public static void main (String args []) {JFrame frame = new JFrame ('Chat Frame') frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE) frame.setSize (400 , 400) JMenuBar ob = new JMenuBar () JMenu ob1 = new JMenu ('FILE') JMenu ob2 = new JMenu ('Help') ob.add (ob1) ob.add (ob2) JMenuItem m11 = new JMenuItem ('Open ') JMenuItem m22 = new JMenuItem (' Save as ') ob1.add (m11) ob1.add (m22) JPanel panel = new JPanel () // plošča ni vidna v izhodu JLabel label = new JLabel (' Enter Text ') JTextField tf = new JTextField (10) // sprejme do 10 znakov JButton send = new JButton (' Send ') JButton reset = new JButton (' Reset ') panel.add (label) // Komponente dodane s pomočjo plošče Layout Flow .add (label) // Komponente dodane s pomočjo plošče Layout Flow.add (tf) panel.add (send) panel.add (reset) JTextArea ta = new JTextArea () frame.getContentPane (). add (BorderLayout.SOUTH, panel ) frame.getContentPane (). add (BorderLayout.NORTH, tf) frame.getContentPane (). add (Border Layout.CENTER, ta) frame.setVisible (true)}}
To je preprost primer za ustvarjanje GUI z uporabo swinga v Javi.
V tem članku smo razpravljali o swingu v Javi in hierarhiji Java swing razredov. Z vsemi komponentami, ki so priložene swingu v Javi, je lažje graditi optimizirane GUI aplikacije. Programski jezik Java je strukturiran programski jezik in z naraščajočim povpraševanjem postaja izjemno pomembno obvladati vse koncepte v . Če želite začeti s svojim učenjem in postati strokovnjak za programiranje jave, se včlanite na Edureka .
Imate vprašanje za nas? prosimo, omenite to v oddelku za komentarje v tem članku 'Swing In Java' in se vam bomo javili v najkrajšem možnem času.