Vadnica za Java Swing je del Java Foundation Classes (JFC), tj uporablja za ustvarjanje okenskih aplikacij . Zgrajen je na vrhu API-ja AWT (Abstract Windowing Toolkit) in je v celoti napisan v Javi.
Za razliko od AWT Java Swing ponuja od platforme neodvisne in lahke komponente.
Paket javax.swing ponuja razrede za API java swing, kot so JButton, JTextField, JTextArea, JRadioButton, JCheckbox, JMenu, JColorChooser itd.
preverjanje ničelne vrednosti java
Razlika med AWT in Swing
Med java awt in swing je veliko razlik, ki so navedene spodaj.
št. | Java AWT | Java Swing |
---|---|---|
1) | Komponente AWT so odvisno od platforme . | Komponente Java swing so neodvisen od platforme . |
2) | Komponente AWT so težkokategornik . | Sestavni deli gugalnice so lahka . |
3) | AWT ne podpira vtičnega videza in občutka . | Gugalnica podpira vtični videz in občutek . |
4) | AWT zagotavlja manj komponent kot Swing. | Swing zagotavlja močnejše komponente kot so tabele, seznami, drsna podokna, izbirnik barv, podokno z zavihki itd. |
5) | AWT ne sledi MVC (Krmilnik pogleda modela), kjer model predstavlja podatke, pogled predstavlja predstavitev, krmilnik pa deluje kot vmesnik med modelom in pogledom. | Gugalnica sledi MVC . |
Kaj je JFC
Razredi Java Foundation (JFC) so niz komponent GUI, ki poenostavljajo razvoj namiznih aplikacij.
Ali veš- Kako ustvariti zagonsko datoteko jar v Javi?
- Kako prikazati sliko na gumbu v swingu?
- Kako spremeniti barvo komponente z izbiro barve v ColorChooserju?
- Kako prikazati digitalno uro v vadnici swing?
- Kako ustvariti beležko v swingu?
- Kako ustvariti puzzle igro in pic puzzle igro v swingu?
- Kako ustvariti igro tic tac toe v swingu?
Hierarhija razredov Java Swing
Hierarhija API-ja java swing je podana spodaj.
binarni drevesni tipi
Pogosto uporabljene metode razreda komponente
Spodaj navedene metode razreda Component se pogosto uporabljajo v java swingu.
Metoda | Opis |
---|---|
javni void add (komponenta c) | dodajte komponento drugi komponenti. |
public void setSize(int širina,int višina) | nastavi velikost komponente. |
javni void setLayout(LayoutManager m) | nastavi upravitelja postavitve za komponento. |
public void setVisible(boolean b) | nastavi vidnost komponente. Privzeto je false. |
Primeri Java Swing
Okvir lahko ustvarite na dva načina:
- Z ustvarjanjem objekta razreda Frame (asociacija)
- Z razširitvijo razreda Frame (dedovanje)
Kodo swinga lahko zapišemo znotraj main(), konstruktorja ali katere koli druge metode.
Preprost primer Java Swing
Oglejmo si preprost primer zamaha, kjer ustvarjamo en gumb in ga dodajamo objektu JFrame znotraj metode main().
Datoteka: FirstSwingExample.java
import javax.swing.*; public class FirstSwingExample { public static void main(String[] args) { JFrame f=new JFrame();//creating instance of JFrame JButton b=new JButton('click');//creating instance of JButton b.setBounds(130,100,100, 40);//x axis, y axis, width, height f.add(b);//adding button in JFrame f.setSize(400,500);//400 width and 500 height f.setLayout(null);//using no layout managers f.setVisible(true);//making the frame visible } }
Primer nihanja po povezovanju znotraj konstruktorja
Prav tako lahko napišemo vse kode za ustvarjanje JFrame, JButton in klic metode znotraj java konstruktorja.
programček
Datoteka: Simple.java
primeri programiranja python
import javax.swing.*; public class Simple { JFrame f; Simple(){ f=new JFrame();//creating instance of JFrame JButton b=new JButton('click');//creating instance of JButton b.setBounds(130,100,100, 40); f.add(b);//adding button in JFrame f.setSize(400,500);//400 width and 500 height f.setLayout(null);//using no layout managers f.setVisible(true);//making the frame visible } public static void main(String[] args) { new Simple(); } }
SetBounds(int xaxis, int yaxis, int width, int height) je uporabljen v zgornjem primeru, ki nastavi položaj gumba.
Preprost primer Swinga po dedovanju
Prav tako lahko podedujemo razred JFrame, tako da ni treba izrecno ustvariti primerka razreda JFrame.
Datoteka: Simple2.java
import javax.swing.*; public class Simple2 extends JFrame{//inheriting JFrame JFrame f; Simple2(){ JButton b=new JButton('click');//create button b.setBounds(130,100,100, 40); add(b);//adding button on frame setSize(400,500); setLayout(null); setVisible(true); } public static void main(String[] args) { new Simple2(); }}prenesite ta primer Kaj se bomo naučili v vadnici Swing
- Razred JButton
- Razred JRadioButton
- razred JTextArea
- Razred JComboBox
- Razred JTable
- Razred JColorChooser
- Razred JProgressBar
- Razred JSlider
- Digitalna ura
- Grafika v zamahu
- Prikaz slike
- Uredi kodo menija za beležnico
- Odpri pogovorno okno
- Beležnica
- Puzzle igra
- Pic Puzzle Igra
- Igra Tic Tac Toe
- BorderLayout
- GridLayout
- FlowLayout
- CardLayout