Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1588 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  GridBagLayout et Component

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

GridBagLayout et Component

n°1814545
liouan
Posté le 20-11-2008 à 16:46:11  profilanswer
 

Bonjour,
 
Pour un projet, j'ai besoin de créer une Map qui contienne des Case
 
J'ai donc fait une classe Case extends Component
 
Lorsque j'instancie ma Case et que je la visualise en la rajoutant directement à une JFrame, je la vois s'afficher correctement, bonne taille avec des images à l'intérieur.
 

Code :
  1. JFrame frame = new JFrame();
  2. Case c1 = new Case(1,10,true);
  3. frame.add(c1);
  4. frame.setSize(new Dimension(640,480));
  5. frame.setVisible(true);


 
Pour afficher la grille de Case, je veux utiliser un GridBagLayout. Je me suis chauffé en essayant de faire afficher une grille de JButton, ça passe tout seul.
En revanche, quand je veux faire afficher ma Grille de Case, ça se complique:

Code :
  1. JPanel panel = new JPanel();
  2. GridBagLayout layout = new GridBagLayout();
  3. panel.setLayout(layout);
  4. GridBagConstraints constraints=new GridBagConstraints();
  5. Case c1 = new Case(1,10,true);
  6. Case c2 = new Case(2,10,true);
  7. Case c3 = new Case(3,0,false);
  8. c1.setSize(new Dimension(Case.TAILLE,Case.TAILLE));
  9. c2.setSize(new Dimension(Case.TAILLE,Case.TAILLE));
  10. c3.setSize(new Dimension(Case.TAILLE,Case.TAILLE));
  11. constraints.gridx=0;
  12. constraints.gridy=0;
  13. layout.setConstraints(c1, constraints);
  14. panel.add(c1);
  15. constraints.gridx=1;
  16. constraints.gridy=0;
  17. layout.setConstraints(c2, constraints);
  18. panel.add(c2);


 
J'obtiens effectivement une grille mes toutes mes cases font 1 pixel!
 
à noter que si je reprends le code précédent et que j'essaie de mettre ma Case dans un JPanel, j'ai le même problème:

Code :
  1. JFrame frame = new JFrame();
  2. JPanel panel = new JPanel();
  3. panel.setLayoutManager(new FlowLayout())
  4. Case c1 = new Case(1,10,true);
  5. panel.add(c1);
  6. frame.add(panel);
  7. frame.setSize(new Dimension(640,480));
  8. frame.setVisible(true);


mood
Publicité
Posté le 20-11-2008 à 16:46:11  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  GridBagLayout et Component

 

Sujets relatifs
dessiner des ComponentUtilisation de Office Web Component (OWC) [auto-résolu]
[Java Swing] Alignement d'un "Box" component à gauche[Resolu]Rave report CalcOp component
probleme avec gridbaglayoutGridBagLayout et héritage
Accéder à un component graphique depuis un server .net remoting.[JAVA][SWING] Pb disposition GridBagLayout
Remplacer dans un gridLayout un component par un autre [résolu]placer une component sans layout
Plus de sujets relatifs à : GridBagLayout et Component


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR