Imbrication de layout...

Imbrication de layout... - Java - Programmation

Marsh Posté le 12-03-2005 à 11:25:42    

Quelqu'un pourrait me dire comment inclure mon gridLayout à gauche dans mon broderLayout ?
 

Code :
  1. public Aire2jeu(String titre,Controlleur cont) {
  2.     super(titre);
  3.     cont = cont;
  4.  
  5.     this.getContentPane().setLayout(new BorderLayout());
  6.  
  7.     GridLayout plateau = new GridLayout(8, 8);
  8.     //Creation des 64 cases
  9.     for (int i = 0; i < 8; i++) {
  10.       for (int j = 0; j < 8; j++) {
  11.         c[i][j] = new Case(i,j,cont);
  12.         .add(add(c[i][j])
  13.     }
  14. }


En gros je vousdrais mes cases à gauche et à droite, ecrire des messages etc. Une suggestion ?


Message édité par Papy Brossard le 12-03-2005 à 11:25:59
Reply

Marsh Posté le 12-03-2005 à 11:25:42   

Reply

Marsh Posté le 12-03-2005 à 11:55:59    

T'as pas compris le principe : un layout c'est pas un composant, c'est un layout manager qui gère un composant. Pour faire ce que tu veux, il faut que tu insère un composant dans ton ContentPane (qui va aller à gauche à cause du BorderLayout), et attribuer un GridLayout à ce composant.
 
et ton cont = cont, ca m'étonnerais que le compilo laisse passer sans rien dire...

Reply

Marsh Posté le 12-03-2005 à 12:05:28    

tu pourrais me mettrela synthaxe s'il te plait ?
Pour ce qui est de cont = cont, quel est le pb?

Reply

Marsh Posté le 12-03-2005 à 12:16:02    

Bah en gros

Code :
  1. JPanel panel = new JPanel();
  2. panel.setLayout(plateau);
  3. this.getContentPane().add(panel);
  4. // et après tu mets tes cases ou ce que tu veux dans panel


 
pour le cont = cont, si tu vois pas le problème je peux rien pour toi.

Reply

Marsh Posté le 12-03-2005 à 12:41:22    

Je vois pas le blem du cont = cont, si il a une variable de classe cont y a pas de raison que ça n'aille pas.
C'est conrant de faire ce genre de choses

Code :
  1. public class Machin {
  2.   private String chose;
  3.   public Machin(String chose) {
  4.     chose = chose;
  5.   }
  6. }


Message édité par glod 2 le 12-03-2005 à 12:41:34
Reply

Marsh Posté le 12-03-2005 à 12:45:15    

La remarque du cont = cont etait sans doute pour signifier l'oubli de this.cont = cont.
L'instruction cont = cont n'a aucun effet...


---------------
PataCara
Reply

Marsh Posté le 12-03-2005 à 12:46:35    

Ah ? Il me semblait que le compilo arrivait à retrouver ses petits dans ce genre de situation, mais jme trompe pê.

Reply

Marsh Posté le 12-03-2005 à 12:47:54    

Si tu fais cont = cont, c'est tout a fait autorisé, tu mets la valeur cont dans le parametre cont (ce qui n'a pas d'effet).


---------------
PataCara
Reply

Marsh Posté le 12-03-2005 à 13:24:58    

mais si. Le compilateur sait le faire. Pour lui, c'est pareil que de faire this.cont = cont....

Reply

Marsh Posté le 12-03-2005 à 13:35:39    

Papy Brossard a écrit :

mais si. Le compilateur sait le faire. Pour lui, c'est pareil que de faire this.cont = cont....


Ce que je voulais dire c'est qu'il me semble beaucoup plus sur et plus propre de préciser le this. Même si le compilo sait s'y retrouver, ce dont je ne suis pas si sur et que de toute façon ne sera pas le cas dans d'autres langages.

Reply

Marsh Posté le 12-03-2005 à 13:35:39   

Reply

Marsh Posté le 12-03-2005 à 13:42:04    

Papy Brossard a écrit :

mais si. Le compilateur sait le faire. Pour lui, c'est pareil que de faire this.cont = cont....


 :jap:

Reply

Marsh Posté le 12-03-2005 à 14:11:12    

c'est effectivement plus propre... Mais je suis en train de faire des essais là, donc je suis plus laxiste. ;)

Reply

Marsh Posté le 12-03-2005 à 14:30:06    

Bon j'ai testé pour savoir si je disais pas trop de conneries.
Déja quand je met truc = truc, j'ai eclipse qui me dit : The assignement to the variable truc has no effect.
 
Et voici mon test :
 

Code :
  1. public class Machin
  2. {
  3.   private String truc = null;
  4.  
  5.  
  6.   public Machin (String truc)
  7.   {
  8.     truc = truc;
  9.   }
  10.  
  11.  
  12.   public String getTruc ()
  13.   {
  14.     return truc;
  15.   }
  16.  
  17.   public static void main (String [] args)
  18.   {
  19.     Machin machin = new Machin ("test" );
  20.     System.out.println ("Truc : " + machin.getTruc());
  21.   }
  22. }


 
Et ce que ca affiche :
 

Citation :

Truc : null


---------------
PataCara
Reply

Marsh Posté le 12-03-2005 à 14:43:24    

Ah oui j'ai testé aussi, donc le compilo ne s'y retrouve pas.

Reply

Marsh Posté le 12-03-2005 à 15:09:38    

ha [:r3g]

Reply

Marsh Posté le 12-03-2005 à 16:24:47    

Ils sont pas facile à convaincre hein R3g


---------------
PataCara
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed