Kas ir Java šūpoles?
Swing in Java ir grafiskās lietotāja saskarnes (GUI) rīku komplekts, kas ietver GUI komponentus. Swing nodrošina bagātīgu logrīku un pakotņu komplektu, lai izveidotu sarežģītus GUI komponentus Java lietojumprogrammām. Swing ir daļa no Java Foundation Classes (JFC), kas ir API Java programmām, kas nodrošina GUI.
Java Swing bibliotēka ir veidota virs Java Abstract Widget Toolkit ( AWT ) - vecāka, no platformas atkarīga GUI rīkkopa. Jūs varat izmantot Java GUI programmēšanas komponentus, piemēram, pogu, tekstlodziņu utt. No bibliotēkas, un jums nav jāizveido komponenti no jauna.
Šajā Java Swing apmācībā jūs uzzināsiet
- Kas ir Java šūpoles?
- Kas ir konteineru klase?
- Kas ir GUI Java?
- Java GUI piemērs
- Java izkārtojuma pārvaldnieks
- Java BorderLayout
- Java FlowLayout
- Java GridBagLayout
Java Swing klases hierarhijas diagramma

Visas Java Swing sastāvdaļas ir JComponent, kuras var pievienot konteineru klasēm.
Kas ir konteineru klase?
Konteineru klases ir klases, kurās var būt citas sastāvdaļas. Tātad, lai izveidotu Java GUI, mums ir nepieciešams vismaz viens konteinera objekts. Ir 3 Java Swing konteineru veidi.
- Panelis : tas ir tīrs trauks un pats par sevi nav logs. Paneļa vienīgais mērķis ir sakārtot komponentus uz loga.
- Rāmis : tas ir pilnībā funkcionējošs logs ar tā nosaukumu un ikonām.
- Dialogs : to var iedomāties kā uznirstošo logu, kas parādās, kad ir jāparāda ziņa. Tas nav pilnībā funkcionējošs logs kā Frame.
Kas ir GUI Java?
Java GUI (grafiskā lietotāja saskarne) Java ir viegli lietojams Java lietojumprogrammu vizuālās pieredzes veidotājs. To galvenokārt veido grafiski komponenti, piemēram, pogas, etiķetes, logi utt., Caur kuriem lietotājs var mijiedarboties ar lietojumprogrammu. GUI ir svarīga loma, veidojot vienkāršas saskarnes Java lietojumprogrammām.
Java GUI piemērs
Tagad šajā Swing Java apmācībā sapratīsim GUI ar Java Swing piemēriem.
Piemērs : Lai apgūtu Java GUI programmēšanu šajā Java GUI apmācībā, veiciet 1. darbību. Nokopējiet šo kodu redaktorā
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. darbība. Saglabājiet, kompilējiet un palaidiet kodu.3. solis. Tagad pievienosim pogu mūsu rāmim. Nokopējiet šo kodu redaktorā no norādītā Java GUI piemēra
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. solis. Izpildiet kodu. Jūs saņemsiet lielu pogu
5. solis) Kā būtu ar divu pogu pievienošanu? Nokopējiet šo kodu redaktorā.
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. solis) Saglabājiet, kompilējiet un palaidiet programmu.7. solis) Negaidīta izeja =? Pogas kļūst pārklājas.
Java izkārtojuma pārvaldnieks
Izkārtojuma pārvaldnieks tiek izmantots GUI Java komponentu izkārtošanai (vai sakārtošanai) konteinerā. Ir daudz izkārtojumu pārvaldnieku, taču visbiežāk izmantotie ir
Java BorderLayout
ABorderLayout
vietas komponenti līdz piecām jomām: augšas, apakšas, pa kreisi, un centrā. Tas ir noklusējuma izkārtojuma pārvaldnieks katram java JFrame
Java FlowLayout
FlowLayout
ir noklusējuma izkārtojuma pārvaldnieks katram JPanel
. Tas vienkārši izklāj komponentus vienā rindā viens pēc otra.
Java GridBagLayout
Tas ir sarežģītāks no visiem izkārtojumiem. Tas izlīdzina komponentus, ievietojot tos šūnu tīklā, ļaujot komponentiem aptvert vairāk nekā vienu šūnu.
8. solis. Kā par tērzēšanas rāmja izveidošanu, piemēram, zemāk?
Pirms aplūkojat zemāk esošo programmu, mēģiniet kodēt sevi.
//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);}}