Voici mon probleme, je veux afficher par l'intermediaire d'un gridLayout dans un panel des canvas (avec une boucle for) car le nombre de case est en realité dynamique, mais pour le moment, je fixe deux entier (nb Colonne et nb ligne ) du gridlayout et ca ne marche pas, aucun affichage...
Alors voici mon code :
MAIS avant tout, sachez que ISOLA est un jar dans lequel il ya des constructeurs et méthode déjà faite et mon but est ici juste de faire l'interface graphique d'un jeu qui s'appele ISOLA et dont les methode et constructeurs sont deja definies ...
__________________________________________________
Allez ici pour comprendre les methodes et constructeurs appelé ISOLA : [URL="http://www.maxence-lefrancois.123.fr/"]ICI[/URL]
__________________________________________________
Voici mon code pour le moment avec les differentes classe :
__________________________________________________
import java.awt.*;
import java.util.Observable;
import java.util.Observer;
import tpIsola.Isola;
public class Dessin extends Canvas implements Observer{
private Isola iso ;
private int i;
private int j;
public Dessin(Isola iso, int i, int j){
this.iso = iso;
this.i = i ;
this.j = j;
}
public void paint(Graphics g){
int[][] t = new int[iso.getNbLignes()][iso.getNbColonnes()];
t = iso.getPlateau();
g.setColor(Color.BLACK);
g.drawRect(20*iso.getNbLignes(), 20*iso.getNbColonnes(), 40, 40); //dessine un rectangle dans tous les canvas quelqu'ils soient
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.Panel;
import tpIsola.Isola;
public class MessagePanel extends Panel{
public MessagePanel(){
Isola iso = new Isola(4,4,2);
this.setLayout(new BorderLayout());
Panel p = new Panel();
GridLayout grid = new GridLayout(iso.getNbLignes(),iso.getNbColonnes());
p.setLayout(grid); //gridLayout dans le panel avec des canvas
for(int k=1; k<=iso.getNbLignes(); k++){
for(int l=1; l<=iso.getNbColonnes(); l++){
Dessin d = new Dessin(iso,k,l);
p.add(d); //ajout du canvas en cours dans le panel p => il y'a autant d'ajout que de nombre de case
}
}
Trouvez des réponses à vos questions sur les langages, les frameworks et les astuces de codage. Échangez avec d'autres développeurs passionnés pour améliorer vos compétences en programmation et rester au fait des dernières tendances du secteur.