CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourHigh-Tech
    • Actus High-Tech
    • Hardware
    • Smartphones
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • High-Tech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Java, GridBagLayout

RBlours
RBlours
Niveau 7
23 décembre 2016 à 16:40:33

Bonjour, pour un projet je dois crée une interface GUI, j'en arrive presque au bout mais la je dois utiliser un GridBagLayout pour placer des éléments dans un JPanel plutôt large. Mais le problème est que lorsque je rentre des éléments dans la gridbagLayout avec le constraints en 0,0 l'élément n'est pas en haut à gauche de la panel mais au milieu. j'ai effectuer quelques tests et la grille commence au centre de la Jpanel.
Ainsi un objet en 1,0 sera légérement à droite du centre, ect...
Je vous montre mon code:

//Conteneur Principal
JPanel resultPanel = new JPanel();
resultPanel.setLayout(new GridBagLayout());
resultPanel.setBorder(BorderFactory.createMatteBorder(0,0,0,0,Color.GREEN));
resultPanel.setPreferredSize(new Dimension(rightPanelWidth,(19*rightPanelHeight)/20));
resultPanel.setBackground(Color.LIGHT_GRAY);
//Objet servant à positionner les composants
GridBagConstraints gbc = new GridBagConstraints();

//Paramètre des cellules
gbc.gridx = 0;
gbc.gridy = 0;
gbc.gridheight = 1;
gbc.gridheight = 1;

//Test D'une cellule:
JPanel cellule = new JPanel();
cellule.setBackground(Color.BLUE);
cellule.setPreferredSize(new Dimension(60,40));
resultPanel.add(cellule,gbc);
gbc.gridx = 1;
gbc.gridy = 1;
JPanel cellule2 = new JPanel();
cellule2.setBackground(Color.RED);
cellule2.setPreferredSize(new Dimension(60,40));
resultPanel.add(cellule2,gbc);

Ainsi la cellule bleue est au milieu et la cellule rouge en bas à droite.
Petite illustration:
http://www.hostingpics.net/viewer.php?id=281762gridbaglayout.png

Merci d'avance de m'aider à corriger sa.

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de Jeux
  • Programmation
  • Création de sites web
  • Linux
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment