Swing est une bibliothèque graphique pour le langage de programmation Java, faisant partie du package Java Foundation Classes (JFC), inclus dans J2SE. Swing constitue l'une des principales évolutions apportées par Java 2 par rapport aux versions antérieures.

Swing

Description de cette image, également commentée ci-après
Capture d'écran d'une fenêtre d'exemple
Informations
Créateur Sun Microsystems
Développé par Oracle
État du projet  Maintenance active
Écrit en JavaVoir et modifier les données sur Wikidata
Environnement Machine virtuelle JavaVoir et modifier les données sur Wikidata
Langues Anglais
Type Bibliothèque Java (d)
Widget toolkitVoir et modifier les données sur Wikidata
Politique de distribution Gratuit
Licence GPL
Site web download.oracle.com/javase/6/docs/technotes/guides/swingVoir et modifier les données sur Wikidata

Chronologie des versions

Swing offre la possibilité de créer des interfaces graphiques identiques quel que soit le système d'exploitation sous-jacent, au prix de performances moindres qu'en utilisant Abstract Window Toolkit (AWT). Il utilise le principe Modèle-Vue-Contrôleur (MVC, les composants Swing jouent en fait le rôle de la vue au sens du MVC) et dispose de plusieurs choix d'apparence pour chacun des composants standards.

Avec l'apparition de Java 8 en mars 2014, JavaFX devient la bibliothèque graphique officielle du langage Java, pour toutes les sortes d'application (applications mobiles, applications sur poste de travail, applications Web), le développement de son prédécesseur Swing étant abandonné (sauf pour les corrections de bogues).

Relation avec AWT

modifier

Depuis les premières versions de Java, Abstract Window Toolkit (AWT) fournit une API indépendante du système d'exploitation pour mettre en œuvre des composants graphiques. Dans AWT, chaque composant est dessiné et contrôlé par un composant tiers natif spécifique au système d'exploitation. C'est pourquoi les composants d'AWT sont appelés composants lourds.

Au contraire, les composants Swing sont décrits comme légers. En effet, ils ne requièrent pas d'allocation de ressources natives de la part du gestionnaire de fenêtres sous-jacent, mais « empruntent » les ressources de leurs ancêtres.

Une grande partie de l'API Swing est une extension complémentaire à AWT plutôt qu'un remplaçant direct. L'affichage est fourni par Java2D, un autre composant des JFC. Cependant, l'usage conjoint de composants légers et lourds au sein d'une même fenêtre est généralement déconseillé à cause de problèmes de gestion de la profondeur[1].

Exemple

modifier

Le programme suivant est un hello world en Swing :

import javax.swing.JFrame;
import javax.swing.JLabel;

public class HelloWorld {
    public static void main(String[] args) {
       // on crée une fenêtre dont le titre est "Hello World!"
       JFrame frame = new JFrame("Hello World!");
       // la fenêtre doit se fermer quand on clique sur la croix rouge
       frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
       
       // on ajoute le texte "Hello, World!" dans la fenêtre
       frame.getContentPane().add(new JLabel("Hello, World!"));
       
       // on demande d'attribuer une taille minimale à la fenêtre
       //  (juste assez pour voir tous les composants)
       frame.pack();
       // on centre la fenêtre
       frame.setLocationRelativeTo(null);
       // on rend la fenêtre visible
       frame.setVisible(true);
    }
}

Annexes

modifier

Sur les autres projets Wikimedia :

Articles connexes

modifier

Liens externes

modifier

Notes et références

modifier

Références

modifier

📚 Artikel Terkait di Wikipedia

Le Jazz et la Java

parisien et français de l'époque, du swing-jazz américain (très en vogue dans les clubs de jazz parisiens) et de la java traditionnelle parisienne (variante

Java Development Kit

d'interfacer du code Java depuis d'autres langages de programmation. jdbc, swing java 2d jaxp Pour connaître la version du JDK installée sur un poste, il suffit

Machine virtuelle

évoluant sont de plus en plus multi-langage (C#, javascript, java, C#), multi-interface (swing, wpf, flash, AJAX-ui-widgets), multi OS (Mac, Window, unix)

Java (langage)

Pour les articles homonymes, voir Java. Ne doit pas être confondu avec JavaScript. Java est un langage de programmation de haut niveau orienté objet créé

NetBeans

qui permet le développement d'applications spécifiques (bibliothèque Swing (Java)). L'EDI NetBeans s'appuie sur cette plate forme. L'EDI Netbeans s'enrichit

JavaFX

projets Wikimedia : JavaFX, sur Wikimedia Commons JavaFX, sur Wikibooks Java (langage) Plate-forme Java Machine virtuelle Java Swing Liste de bibliothèques

Swing (musique)

Pour les articles homonymes, voir Swing. Swing Sous-genres Swing revival Genres associés Electro swing Le swing est un genre musical et une danse qui

Java SE

Java SE Jakarta EE Java ME JavaFX Java Card Java Platform, Standard Edition, ou Java SE (anciennement Java 2 Platform, Standard Edition, ou J2SE), est