Kiik Java-s: osake GUI-d luua koos näidetega

: teenige kiikide kontseptsiooni javas koos swing-klassi hierarhia ja paigutushalduriga GUI-rakenduse praktilise tutvustusega.

Java kiik on osa Java sihtasutuse klassist, mis on kerge ja platvormist sõltumatu. Seda kasutatakse aknapõhiste rakenduste loomiseks. See sisaldab komponente nagu nupp, kerimisriba, tekstivälja jne. Kõigi nende komponentide kokku panemine muudab graafilise kasutajaliidese. Selles artiklis käsitleme mõisteid, mis on seotud rakenduste ehitamise protsessiga, kasutades swing ini . Selles artiklis käsitletavad mõisted on järgmised:

Mis on Java kiik?

Swing in Java on kerge GUI tööriistakomplekt, millel on mitmesuguseid vidinaid optimeeritud aknapõhiste rakenduste loomiseks. See on osa JFC-st (Java Foundation Classes). See on ehitatud AWT API peale ja täielikult sisse kirjutatud . Erinevalt AWT-st on see platvormist sõltumatu ja sellel on kerged komponendid.





Rakenduste loomine muutub lihtsamaks, kuna meil on juba GUI komponente, nagu nupp, märkeruut jne. See on kasulik, kuna me ei pea alustama nullist.

Konteinerklass

Ükskõik millel on muid komponente, nimetatakse konteineriklassiks. GUI-rakenduste ehitamiseks on vajalik vähemalt üks konteineriklass.



Järgnevad kolme tüüpi konteinerite klassid:

  1. Paneel - seda kasutatakse komponentide korrastamiseks aknasse

  2. Raam - täielikult toimiv aken ikoonide ja pealkirjadega



  3. Dialoog - see on nagu hüpikaken, kuid pole täielikult funktsionaalne nagu raam

Erinevus AWT ja kiige vahel

AWT Kiik
  • Platvormist sõltuv
  • Platvorm sõltumatu
  • Ei järgi MVC-d
  • Järgib MVC-d
  • Väiksemad komponendid
  • Võimsamad komponendid
  • Ei toeta ühendatavat välimust ja tunnet
  • Toetab ühendatavat välimust ja tunnet
  • Raskekaaluline
  • Kerge

Java Swing klassi hierarhia

hierarhia-kiik java-edurekas

Selgitus : Kõik kiikuvad komponendid nagu JButton, JComboBox, JList, JLabel on päritud JComponent klassist, mida saab lisada konteineriklassidesse. Konteinerid on aknad nagu raam ja dialoogiboksid. Kiigete põhikomponendid on mis tahes gui-rakenduse ehituskivid. Sellised meetodid nagu setLayout alistavad iga konteineri vaikepaigutuse. Konteinerid nagu JFrame ja JDialog saavad komponendi lisada ainult iseendale. Järgnevalt on toodud mõned näited, et mõista, kuidas neid kasutada saame.

JButtoni klass

Seda kasutatakse sildistatud nupu loomiseks. ActionListeneri kasutamine põhjustab nupu vajutamisel mõningaid toiminguid. See pärib klassi AbstractButton ja on platvormist sõltumatu.

Näide:

import javax.swing. * avaliku klassi näide {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)}}

Väljund:

on magistrikraadi kraadiõppur

JTextField klass

See pärib klassi JTextComponent ja seda kasutatakse ühe rea teksti redigeerimise võimaldamiseks.

Näide:

import javax.swing. * avaliku klassi näide {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)}}

Väljund:

JScrollBar klass

Seda kasutatakse nii horisontaalse kui ka vertikaalse kerimisriba lisamiseks.

ssis õpetus algajatele 2012 koos näidetega

Näide:

import javax.swing. * klassi näide {näide () {JFrame a = uus JFrame ('näide') JScrollBar b = uus JScrollBar () b.setBounds (90,90,40,90) a.add (b) a. setSize (300 300) a.setLayout (null) a.setVisible (true)} avalik staatiline void main (String args []) {uus näide ()}}

Väljund:

JPaneli klass

See pärib klassi JComponent ja annab ruumi rakendusele, kuhu saab kinnitada mis tahes muu komponendi.

import java.awt. * import javax.swing. * avalik klass Näide {Näide () {JFrame a = new JFrame ('näide') JPanel p = new JPanel () p.setBounds (40,70,200,200) JButton b = new JButton ('klõpsake mind') b.setBounds (60,50,80,40) p.add (b) a.add (p) a.setSize (400,400) a.setLayout (null) a.setVisible (true)} public staatiline void main (String args []) {uus näide ()}}

Väljund:

JMenu Clas s

See pärib klassi JMenuItem ja on rippmenüü komponent, mida kuvatakse menüüribal.

import javax.swing. * klassi näide {JMenu menüü JMenuItem a1, a2 Näide () {JFrame a = new JFrame ('Näide') menu = new JMenu ('options') JMenuBar m1 = new JMenuBar () a1 = new JMenuItem ( 'näide') a2 = uus JMenuItem ('näide1') menüü.add (a1) menüü.add (a2) m1.add (menüü) a.setJMenuBar (m1) a.setSize (400,400) a.setLayout (null) a .setVisible (true)} avalik staatiline void main (String args []) {uus näide ()}}

Väljund:

JListi klass

See pärib klassi JComponent, klassi JList objekt tähistab tekstielementide loendit.

import javax.swing. * avalik klass Näide {Näide () {JFrame a = uus JFrame ('näide') DefaultListModel l = new DefaultListModel () l.addElement ('esimene üksus') l.addElement ('teine ​​üksus') JList b = uus JList (l) b.setBounds (100,100,75,75) a.add (b) a.setSize (400,400) a.setVisible (true) a.setLayout (null)} avalik staatiline void main (String args [ ]) {uus näide ()}}

Väljund:

JLabeli klass

Seda kasutatakse teksti konteinerisse paigutamiseks. See pärib ka JComponenti klassi.

import javax.swing. * public class Näide {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)}}

Väljund:

JComboBoxi klass

See pärib klassi JComponent ja seda kasutatakse valikute hüpikmenüü kuvamiseks.

import javax.swing. * avaliku klassi näide {JFrame a Example () {a = new JFrame ('example') string courses [] = {'core java', 'anksto java', 'java servlet'} JComboBox c = new JComboBox (kursused) c.setBounds (40,40,90,20) a.add (c) a.setSize (400,400) a.setLayout (null) a.setVisible (true)} avalik staatiline void main (String args [] ) {uus näide ()}}

Väljund:

Paigutuse haldur

Komponentide paigutamiseks konteineris kasutame paigutushaldurit. Allpool on mitu küljendushaldurit:

  1. Äärise paigutus

  2. Voo paigutus

  3. GridBagi paigutus

Piiri paigutus

Iga JF-kaadri vaikeplaanihaldur on BorderLayout. See asetab komponendid kuni viide kohta, mis on üleval, all, vasakul, paremal ja keskel.

Voolu paigutus

FlowLayout paigutab komponendid lihtsalt üksteise järel järjestikku, see on vaikepaneelijuht iga JPaneli jaoks.

GridBag paigutus

GridBagLayout paigutab komponendid ruudustikku, mis võimaldab komponentidel ulatuda rohkem kui ühe lahtrini.

Näide: vestlusraam

import javax.swing. * import java.awt. * klass Näide {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 = uus JMenuItem (' Salvesta nimega ') ob1.add (m11) ob1.add (m22) JPaneli paneel = uus JPanel () // paneel ei ole väljundis nähtav JLabel silt = uus JLabel (' Sisesta tekst ') JTextField tf = new JTextField (10) // aktsepteerib kuni 10 tähemärki JButton send = new JButton (' Send ') JButton reset = new JButton (' Reset ') panel.add (label) // Flow Layout paneeli abil lisatud komponendid .add (label) // Flow Layout abil lisatud komponendid.add (tf) panel.add (send) panel.add (reset) JTextArea ta = new JTextArea () frame.getContentPane (). add (BorderLayout.SOUTH, paneel ) frame.getContentPane (). add (BorderLayout.NORTH, tf) frame.getContentPane (). add (Border Layout.CENTER, ta) frame.setVisible (true)}}

See on lihtne näide GUI loomiseks GUI abil.

r programmeerimiskeelt kasutavad ettevõtted

Selles artiklis oleme käsitlenud kiike Java-s ja Java swing-klasside hierarhiat. Kõigi Java-s kiigega kaasnevate komponentide abil on optimeeritud GUI-rakenduste loomine lihtsam. Java programmeerimiskeel on struktureeritud programmeerimiskeel ja suureneva nõudluse korral muutub kõigi mõistete valdamine ülitähtsaks . Õppimise alustamiseks ja Java-programmeerimise eksperdiks saamiseks registreeruge Edureka's .

Kas teil on meile küsimus? palun mainige seda selle artikli Swing In Java kommentaaride osas ja võtame teiega ühendust niipea kui võimalik.