logo

Tutorial de Java Swing

Tutorial de Java Swing és una part de Java Foundation Classes (JFC), és a dir s'utilitza per crear aplicacions basades en finestres . Està construït a la part superior de l'API AWT (Abstract Windowing Toolkit) i escrit completament en java.

A diferència d'AWT, Java Swing proporciona components lleugers i independents de la plataforma.

El paquet javax.swing proporciona classes per a l'API java swing com ara JButton, JTextField, JTextArea, JRadioButton, JCheckbox, JMenu, JColorChooser, etc.

caràcter d'escapament de java

Diferència entre AWT i Swing

Hi ha moltes diferències entre java awt i swing que es donen a continuació.

No.Java AWTSwing de Java
1)Els components AWT són depenent de la plataforma .Els components de swing de Java són independent de la plataforma .
2)Els components AWT són pes pesat .Els components del swing són lleuger .
3)AWT no admet l'aspecte i la sensació connectables .Swing admet l'aspecte i la sensació connectables .
4)AWT ofereix menys components que Swing.Swing ofereix components més potents com ara taules, llistes, panells de desplaçament, selector de colors, panells de pestanyes, etc.
5)AWT no segueix MVC (Model View Controller) on el model representa dades, la vista representa la presentació i el controlador actua com a interfície entre el model i la vista.Swing segueix MVC .

Què és JFC

Les classes Java Foundation (JFC) són un conjunt de components de GUI que simplifiquen el desenvolupament d'aplicacions d'escriptori.

Saps
  • Com crear un fitxer jar executable a Java?
  • Com mostrar la imatge en un botó en swing?
  • Com canviar el color del component escollint un color de ColorChooser?
  • Com mostrar el rellotge digital al tutorial de swing?
  • Com crear un bloc de notes a swing?
  • Com crear un joc de trencaclosques i un joc de trencaclosques amb imatges en swing?
  • Com crear un joc de tic tac toe en swing?

Jerarquia de les classes de Java Swing

La jerarquia de l'API java swing es mostra a continuació.

exemple de llista en java
jerarquia de javax swing

Mètodes de classe de components utilitzats habitualment

Els mètodes de la classe Component s'utilitzen àmpliament en el swing de Java que es donen a continuació.

MètodeDescripció
public void add (component c)afegir un component a un altre component.
public void setSize (amplada int, altura int)estableix la mida del component.
public void setLayout(LayoutManager m)estableix el gestor de disseny per al component.
public void setVisible (booleà b)estableix la visibilitat del component. Per defecte és fals.

Exemples de swing de Java

Hi ha dues maneres de crear un marc:

  • En crear l'objecte de la classe Frame (associació)
  • En estendre la classe Frame (herència)

Podem escriure el codi de swing dins del main(), constructor o qualsevol altre mètode.


Exemple simple de swing de Java

Vegem un exemple de swing senzill on estem creant un botó i afegint-lo a l'objecte JFrame dins del mètode main().

botó tkinter

Fitxer: 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 } } 

Exemple de Swing per Associació dins del constructor

També podem escriure tots els codis de creació de JFrame, JButton i trucades de mètode dins del constructor java.

Fitxer: Simple.java

tipus de dades java
 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(); } } 

El setBounds(int xaxis, int yaxis, int width, int height) s'utilitza a l'exemple anterior que estableix la posició del botó.


Exemple senzill de Swing per herència

També podem heretar la classe JFrame, de manera que no cal crear la instància de la classe JFrame de manera explícita.

Fitxer: 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(); }} 
descarregueu aquest exemple Què aprendrem a Swing Tutorial
  • Classe JButton
  • Classe JRadioButton
  • Classe JTextArea
  • Classe JComboBox
  • Classe JTable
  • Classe JColorChooser
  • Classe JProgressBar
  • Classe JSlider
  • Rellotge digital
  • Gràfics en swing
  • Visualització de la imatge
  • Edita el codi del menú per al Bloc de notes
  • Quadre de diàleg obert
  • Bloc de notes
  • Joc de trencaclosques
  • Pic Joc de trencaclosques
  • Joc Tic Tac Toe
  • BorderLayout
  • GridLayout
  • FlowLayout
  • CardLayout