Comment dimensionner un bouton en java
nice
-
nice -
nice -
Bonjour,
je veux dimensionner mais bouton mais sans succès.on m'a donné la ligne de code:bouton.setPreferredSize(new Dimension(150, 120)); mais je ne sais pas à quelle niveau la placer dans mon code.voici mon code:
package Menuprincipal;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.GridLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Fenetre extends JFrame{
public Fenetre(){
this.setTitle("MENU");
this.setSize(500, 600);
this.setLocationRelativeTo(null);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setResizable(false);
JPanel pan = new JPanel();
pan.setBackground (Color.green);
this.setContentPane(pan);
GridLayout gl = new GridLayout(4,0);
gl.setVgap(50);
this.setLayout(gl);
this.getContentPane().add (new JButton("Nouvelle partie"));
this.getContentPane().add (new JButton("Charger partie"));
this.getContentPane().add (new JButton("Objectif"));
this.getContentPane().add (new JButton("Quitter"));
this.setVisible(true);
}
}
je veux dimensionner mais bouton mais sans succès.on m'a donné la ligne de code:bouton.setPreferredSize(new Dimension(150, 120)); mais je ne sais pas à quelle niveau la placer dans mon code.voici mon code:
package Menuprincipal;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.GridLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Fenetre extends JFrame{
public Fenetre(){
this.setTitle("MENU");
this.setSize(500, 600);
this.setLocationRelativeTo(null);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setResizable(false);
JPanel pan = new JPanel();
pan.setBackground (Color.green);
this.setContentPane(pan);
GridLayout gl = new GridLayout(4,0);
gl.setVgap(50);
this.setLayout(gl);
this.getContentPane().add (new JButton("Nouvelle partie"));
this.getContentPane().add (new JButton("Charger partie"));
this.getContentPane().add (new JButton("Objectif"));
this.getContentPane().add (new JButton("Quitter"));
this.setVisible(true);
}
}
1 réponse
-
package Menuprincipal; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import java.awt.GridLayout; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; public class Fenetre extends JFrame{ private JButton nouveauButton, loadButton, objectifButton, quitButton; public Fenetre(){ this.setTitle("MENU"); this.setSize(500, 600); this.setLocationRelativeTo(null); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setResizable(false); JPanel pan = new JPanel(); pan.setBackground (Color.green); this.setContentPane(pan); GridLayout gl = new GridLayout(4,0); gl.setVgap(50); this.setLayout(gl); nouveauButton = new JButton("Nouvelle partie"); nouveauButton.setPreferredSize(new Dimension(150, 120)); idem pour les autres boutons ... ensuite this.getContentPane().add (nouveauButton); this.getContentPane().add (loadButton); this.getContentPane().add (objectifButton); this.getContentPane().add (quitButton); this.setVisible(true); } }-
-
-
-
package Menuprincipal;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.GridLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Fenetre extends JFrame{
private JButton nouveauButton,loadButton;
public Fenetre(){
this.setTitle("MENU");
this.setSize(500, 600);
this.setLocationRelativeTo(null);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setResizable(false)
JPanel pan = new JPanel();
pan.setBackground (Color.green);
this.setContentPane(pan);
GridLayout gl = new GridLayout(4,0);
gl.setVgap(10); // 5 pixels d'espace entre les lignes (V comme Vertical)
this.setLayout(gl);
nouveauButton = new JButton("Nouvelle partie");
nouveauButton.setPreferredSize(new Dimension(80,56));
loadButton=new JButton("Charger partie");
loadButton.setPreferredSize(new Dimension(100,56));
this.getContentPane().add (nouveauButton);
this.getContentPane().add (loadButton);
this.setVisible(true);
}
} -
ça te remonte une erreur ??? l'affichage n'est pas correct ?
autre question, tes boutons ne doivent-ils pas intégrer ton JPanel "pan" ???
voici le code démo du GridLayout
https://docs.oracle.com/javase/tutorial/uiswing/layout/grid.html
https://docs.oracle.com/javase/tutorial/uiswing/examples/layout/GridLayoutDemoProject/src/layout/GridLayoutDemo.java
-