Deux aspects doivent être étudiés.
Le principe est que l'on travaille avec un ensemble de composants graphiques, la fenêtre principale est un tel composant, et certains composants peuvent contenir d'autres composants.
Beaucoup de types de composants, correspondant à différentes fonctionnalités, sont disponibles : par exemple des boutons, des zones de texte, des zones pour le dessin... Il est bon de faire le tour des différents types de composants pour au moins en connaître l'existence.
Ajouter, retirer, dimensionner, positionner les composants peut se faire directement en utilisant les méthodes appropriées mais ce sera rarement la solution retenue ; on peut également employer un gestionnaire de répartition, Java prévoit plusieurs tels gestionnaires, qu'il faut connaître.
Pour tracer (des dessins, des images, des chaînes de caractères...) dans un composant graphique, on utilise une instance de la classe java.awt.Graphics. Un objet de cette classe s'appelle un contexte graphique, nous l'appellerons aussi "crayon savant" car il sert à dessiner mais "sait" aussi comment dessiner un cercle, un rectangle, une image etc. Ce qu'on appelle couleur d'avant-plan est la couleur qui est utilisée par défaut pour les dessins ; la couleur d'arrière-plan est la couleur de fond. On peut modifier les couleurs d'avant-plan ou d'arrière plan d'un compsoant. Un objet de type Graphics dessine avec la couleur d'avant-plan, sauf si on demande à avoir une autre couleur.
La plupart des composants graphiques ont une taille par défaut, qui peut d'ailleurs être nulle. Par exemple, un bouton a par défaut la taille nécessaire pour écrire le nom qu'on y voit inscrit. La méthode pack de la classe java.awt.Window, dont hérite par exemple la classe JFrame, permet de dimensionner la taille d'une fenêtre en fonction des tailles de ses différents sous-composants. Il peut être mieux de l'utiliser plutôt que de préciser directement la taille d'une fenêtre.
Une interface graphique est une interface entre un utilisateur et une application. L'interface va donc devoir réagir à des actions de l'utilisateur (par exemple, un clic sur un bouton) et aussi à des instructions données par le programme (par exemple, écrire un texte dans une zone de texte). Les actions de l'utilisateur à destination de l'interface graphique sont appelées de événements.
© Irène Charon Télécom ParisTech 2010