Création interface graphique avec Swing : les bases


précédentsommairesuivant

1. Introduction

Vous avez toujours voulu créer une application avec une interface graphique en java, mais vous n'avez pas réussi.

Ce tutoriel est fait pour vous. On va y découvrir les composants de base d'une interface graphique et comment les intégrer à votre interface et tout cela en utilisant Swing. A la fin de ce tutoriel, vous aurez créé une petite calculatrice, qui pourra vous servir de base à vos futurs programmes.

Ce tutoriel est divisé en différentes petites étapes et à la fin de chacune de celles-ci, vous pouvez télécharger le code source de l'étape pour toujours avoir une base de comparaison en cas d'erreur. Vous pouvez aussi télécharger l'intégralité des sources à la fin du tutoriel.

Cet article n'est pas destiné à couvrir la totalité de Swing. Il vous présentera les bases du framework, il sera complété à termes par d'autres articles plus poussés sur des sujets précis.

1.1. Notre projet

Le projet que nous allons développer tout au long de ce tutoriel est très simple. C'est une petite calculette permettant de faire des additions, des soustractions, des multiplications et des divisions et tout cela avec 2 nombres. On utilisera une fenêtre pour afficher cette calculatrice.

Au niveau de l'interface que nous devrons développer, elle consistera donc en une fenêtre contenant 5 champs :

  • Un champ pour saisir le premier nombre
  • Un champ pour saisir le deuxième nombre
  • Une liste pour choisir l'opérateur
  • Un bouton pour effectuer le calcul
  • Un champ pour afficher le résultat du calcul

Nous avancerons le projet au fur et à mesure que nous apprendrons à manipuler les composants d'une interface graphique.

2. Swing

Tout au long de cet article, nous allons utiliser le framework graphique Swing. Mais qu'est-ce que ce Swing et pourquoi utiliser celui-là plutôt qu'un autre ?

Pour comprendre ce qu'est Swing, on va remonter un peu plus loin, au début de Java. Swing n'existait pas encore. On utilisait alors AWT pour créer des interfaces graphiques. AWT utilise directement les composants du système. Cela permet d'être rapide puisque c'est le système qui s'occupe de la création. Néanmoins, Java se voulant portable, on est obligé de limiter les composants AWT aux composants qu'on trouve sur tous les systèmes d'exploitation. On ne trouvait donc pas de tableau ni d'arbre.

C'est pour pallier à ce manque de composants que Swing a été introduit dans Java 1.2. Cette fois, les composants sont entièrement dessinés en Java, on peut donc créer autant de composants que l'on veut. C'est grâce à cela qu'on peut trouver maintenant un tableau ou un arbre dans les interfaces graphiques en Java. Néanmoins, Swing a été critiqué dans ses départs pour sa lenteur par rapport à AWT, en effet, cette fois, Java doit tout dessiner lui-même ce qui est logiquement plus lent que de demander au système d'afficher un composant. Mais depuis sa première version Swing a été très largement amélioré pour être maintenant une librairie très rapide et très complète. On peut noter que tous les composants Swing (reconnaissables à leur nom préfixés par J) héritent des composants AWT.

Dans les frameworks concurrents, on peut encore citer SWT. Il se situe entre AWT et Swing. C'est-à-dire qu'il utilise les composants systèmes, mais quand un composant n'existe pas sur le système, il l'emule en le dessinant directement. Le désavantage, c'est donc qu'on a une librairie SWT pour chaque système.


précédentsommairesuivant

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

  

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2009 Baptiste Wicht. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.