
LES APPLICATIONS DISTRIBUEES
Projet 1
17/04/2017
Par J. LAFORGUE
page 4
_g.afficherGrille();
}
}
Le constructeur de la classe GrilleIHM est de la forme :
public GrilleIHM(
int nbX,
int nbY,
GrilleControlesInt anyActions)
nbX est le nombre de colonnes de la grille
nbY est le nombre de lignes de la grille
anyActions est l'interface des traitements des boutons
La taille, en pixel, des cellules est égal à 15.
Le nombre de boutons créés est égal à 10.
L'IHM principal est un Panel qui est accessible par la méthode
public Panel getPanel()
Cette méthode est utilisée par GrillePP afin d'ajouter notre IHM dans une fenêtre
principale (Frame) crée dans le programme principal.
Ce panel est composé de 2 autres panels. Le premier contient les boutons, le deuxième
contient le canvas (la grille).
Afficher la grille consiste à effacer la zone graphique du canvas et à afficher la grille (lignes
horizontales et verticales) puis à dessiner les carrés et les ronds en fonction des valeurs
contenues dans le tableau à 2 dimension.
Exemple de code pour afficher une ligne est :
Graphics g = _canvas.getGraphics();
g.drawLine(x1,y1,x2,y2);
Exemple de code pour afficher un carré rouge est :
Graphics g = _canvas.getGraphics();
g.setColot(Color.red);
g.fillRect(x,y,xidth,height);
Les services de la classe à réaliser correspondent aux méthodes suivantes :
public Point ajouterAleat(int marque)
cette méthode ajoute dans la grille un carré aléatoirement dans
un des cases libres. La couleur est déterminée en fonction de
la marque.
Si il n'y a pas de cases libres alors retourne null; la grille
et pleine.
public Point deplacer(int x,int y,int sensX,int sensY)
cette méthode déplace un élément situé en (x,y) vers (x',y').
x' = x + sensX
y' = y + sensY
avec