Swing Java: osaa luoda GUI esimerkkien avulla



: ansaita swing-käsite java-tilassa swing-luokkahierarkialla ja layout managerilla käytännön esittely GUI-sovelluksesta.

Swing in Java on osa Java-perustusluokkaa, joka on kevyt ja alustasta riippumaton. Sitä käytetään ikkunapohjaisten sovellusten luomiseen. Se sisältää komponentteja, kuten painikkeen, vierityspalkin, tekstikentän jne. Kaikkien näiden komponenttien yhdistäminen muodostaa graafisen käyttöliittymän. Tässä artikkelissa käymme läpi käsitteet, jotka liittyvät sovellusten rakentamiseen swing in -toiminnon avulla . Tässä artikkelissa käsitellään seuraavia käsitteitä:

Mikä on Swing Java?

Swing in Java on kevyt GUI-työkalupakki, jolla on laaja valikoima widgettejä optimoitujen ikkunapohjaisten sovellusten rakentamiseen. Se on osa JFC: tä (Java Foundation Classes). Se on rakennettu AWT-sovellusliittymän päälle ja kirjoitettu kokonaan sisään . Se on alustasta riippumaton, toisin kuin AWT, ja siinä on kevyet komponentit.





Sovellusten rakentaminen on helpompaa, koska meillä on jo GUI-komponentteja, kuten painike, valintaruutu jne. Tämä on hyödyllistä, koska meidän ei tarvitse aloittaa tyhjästä.

Kontti luokka

Minkä tahansa jossa on muita komponentteja, kutsutaan konttiluokaksi. GUI-sovellusten rakentamiseen tarvitaan vähintään yksi konttiluokka.



Seuraavassa on kolme konttiluokan tyyppiä:

  1. Paneeli - Sitä käytetään komponenttien järjestämiseen ikkunaan

  2. Kehys - Täysin toimiva ikkuna, jossa on kuvakkeita ja otsikoita



  3. Dialogi - Se on kuin ponnahdusikkuna, mutta ei täysin toimiva kuin kehys

Ero AWT: n ja Swingin välillä

AWT KEINU
  • Alusta riippuvainen
  • Alusta riippumaton
  • Ei seuraa MVC: tä
  • Seuraa MVC: tä
  • Vähemmän komponentteja
  • Tehokkaammat komponentit
  • Ei tue liitettävää ulkoasua
  • Tukee liitettävää ulkoasua
  • Raskas
  • Kevyt

Java Swing -luokan hierarkia

hierarkia-keinu java-edurekassa

Selitys : Kaikki vauhdissa olevat komponentit, kuten JButton, JComboBox, JList, JLabel, peritään JComponent-luokasta, joka voidaan lisätä säiliöryhmiin. Säiliöt ovat ikkunoita, kuten kehys ja valintaikkunat. Kääntämisen peruskomponentit ovat minkä tahansa GUI-sovelluksen rakennuspalikoita. Menetelmät, kuten setLayout, ohittavat kunkin säilön oletusasettelun. Säiliöt, kuten JFrame ja JDialog, voivat lisätä komponentin vain itseensä. Seuraavassa on muutamia komponentteja ja esimerkkejä siitä, miten voimme käyttää niitä.

JButton-luokka

Sitä käytetään luomaan merkitty painike. ActionListenerin käyttäminen johtaa toimintaan, kun painiketta painetaan. Se perii AbstractButton-luokan ja on alustasta riippumaton.

Esimerkki:

tuo javax.swing. * julkisen luokan esimerkki {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)}}

Tuotos:

on jatko-opiskelija ja hallitsee saman

JTextField-luokka

Se perii JTextComponent-luokan ja sitä käytetään yhden rivin tekstin muokkaamiseen.

Esimerkki:

tuo javax.swing. * julkisen luokan esimerkki {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)}}

Tuotos:

JScrollBar-luokka

Sitä käytetään vierityspalkin lisäämiseen, sekä vaaka- että pystysuoraan.

Esimerkki:

tuo javax.swing. * luokan esimerkki {esimerkki () {JFrame a = uusi JFrame ('esimerkki') JScrollBar b = uusi JScrollBar () b.setBounds (90,90,40,90) a.add (b) a. setSize (300 300) a.setLayout (null) a.setVisible (true)} julkinen staattinen void main (String args []) {uusi esimerkki ()}}

Tuotos:

JPanel-luokka

Se perii JComponent-luokan ja tarjoaa tilaa sovellukselle, johon voidaan liittää mikä tahansa muu komponentti.

tuo java.awt. * tuo javax.swing. * julkinen luokka Esimerkki {Esimerkki () {JFrame a = uusi JFrame ('esimerkki') JPanel p = uusi JPanel () p.setBounds (40,70,200,200) JButton b = uusi JPainike ('napsauta minua') b.setBounds (60,50,80,40) p.add (b) a.add (p) a.setSize (400,400) a.setLayout (null) a.setVisible (true)} public staattinen void main (String args []) {uusi esimerkki ()}}

Tuotos:

JMenu Clas s

Se perii JMenuItem-luokan ja on alasvetovalikkokomponentti, joka näytetään valikkoriviltä.

tuo javax.swing. * luokan esimerkki {JMenu-valikko JMenuItem a1, a2 Esimerkki () {JFrame a = uusi JFrame ('Esimerkki') -valikko = new JMenu ('vaihtoehdot') JMenuBar m1 = uusi JMenuBar () a1 = uusi JMenuItem ( 'esimerkki') a2 = uusi JMenuItem ('esimerkki1') -valikko.add (a1) valikko.add (a2) m1.add (valikko) a.setJMenuBar (m1) a.setSize (400,400) a.setLayout (null) a .setVisible (true)} public static void main (String args []) {uusi esimerkki ()}}

Tuotos:

JList-luokka

Se perii JComponent-luokan, JList-luokan objekti edustaa luetteloa tekstikohteista.

tuo javax.swing. * julkinen luokka Esimerkki {Esimerkki () {JFrame a = uusi JFrame ('esimerkki') DefaultListModel l = uusi DefaultListModel () l.addElement ('ensimmäinen kohde') l.addElement ('toinen kohde') JList b = uusi 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 [ ]) {uusi esimerkki ()}}

Tuotos:

taulukon tietojen sekoittaminen ei toimi

JLabel-luokka

Sitä käytetään tekstin sijoittamiseen astiaan. Se perii myös JComponent-luokan.

tuo javax.swing. * public class Esimerkki {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)}}

Tuotos:

JComboBox-luokka

Se perii JComponent-luokan ja sitä käytetään valintojen ponnahdusvalikossa.

tuo javax.swing. * julkisen luokan esimerkki {JFrame a Example () {a = new JFrame ('example') string courses [] = {'core java', 'advanced java', 'java servlet'} JComboBox c = new JComboBox (kurssit) c.setBounds (40,40,90,20) a.add (c) a.setSize (400,400) a.setLayout (null) a.setVisible (true)} julkinen staattinen void main (String args [] ) {uusi esimerkki ()}}

Tuotos:

Asettelupäällikkö

Järjestelemään komponentit säiliön sisällä käytämme asettelunhallintaa. Seuraavassa on useita asettelupäälliköitä:

  1. Reunan asettelu

  2. Virtauksen asettelu

  3. GridBag-asettelu

Rajan asettelu

Jokaisen JFrame-kehyksen oletusasettelun hallinta on BorderLayout. Se sijoittaa komponentit jopa viiteen paikkaan, jotka ovat ylhäällä, alhaalla, vasemmalla, oikealla ja keskellä.

staattinen lohkoesimerkki jaavassa

Virtauksen asettelu

FlowLayout yksinkertaisesti asettaa komponentit peräkkäin peräkkäin, se on oletusasettelun hallinta jokaiselle JPanelille.

GridBag-asettelu

GridBagLayout sijoittaa komponentit ruudukkoon, jonka avulla komponentit voivat ulottua useampaan kuin yhteen soluun.

Esimerkki: Chat Frame

Tuo javax.swing. * Tuo java.awt. * luokka Esimerkki {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 = uusi JMenuItem (' Tallenna nimellä ') ob1.add (m11) ob1.add (m22) JPanel-paneeli = uusi JPanel () // paneeli ei näy tulostuksessa JLabel label = new JLabel (' Enter Text ') JTextField tf = uusi JTextField (10) // hyväksyy enintään 10 merkkiä JButton send = uusi JButton (' Send ') JButton reset = uusi JButton (' Reset ') panel.add (label) // komponentit, jotka on lisätty Flow Layout -paneelilla .add (label) // Komponentit lisätty Flow Layout -paneelilla. add (tf) panel.add (lähetä) panel.add (reset) JTextArea ta = new JTextArea () frame.getContentPane (). add (BorderLayout.SOUTH, paneeli ) frame.getContentPane (). add (BorderLayout.NORTH, tf) frame.getContentPane (). add (Border Layout.CENTER, ta) frame.setVisible (true)}}

Tämä on yksinkertainen esimerkki GUI: n luomisesta Java-swingillä.

Tässä artikkelissa olemme keskustelleet Java-swingistä ja Java-swing-luokkien hierarkiasta. Kaikkien Java-käänteisten komponenttien ansiosta optimoidun GUI-sovelluksen rakentaminen on helpompaa. Java-ohjelmointikieli on jäsennelty ohjelmointikieli, ja kysynnän kasvaessa on erittäin tärkeää hallita kaikkia käsitteitä . Aloita oppimisen aloittaminen ja tulla Java-ohjelmoinnin asiantuntijaksi ilmoittautumalla Edurekaan .

Onko sinulla kysymys meille? mainitse tämä tämän Swing In Java -artikkelin kommenttiosassa ja otamme sinuun yhteyttä mahdollisimman pian.