Definir la dimension d'un jbutton dans java

Résolu
langagec08 Messages postés 72 Date d'inscription mardi 30 mars 2010 Statut Membre Dernière intervention 22 août 2011 - 27 mars 2011 à 23:22
langagec08 Messages postés 72 Date d'inscription mardi 30 mars 2010 Statut Membre Dernière intervention 22 août 2011 - 29 mars 2011 à 17:01
Bonsoir tout le monde,
j'aimerai savoir comment peut on dimensionner un Jbutton en java sachant que j'utilise le GridLayout pour positionner mes éléments.
Merci d'avance
A voir également:

6 réponses

cs_jojolemariole Messages postés 519 Date d'inscription mercredi 21 mars 2007 Statut Membre Dernière intervention 19 décembre 2016 25
29 mars 2011 à 09:39
Salut,

Ton code ne compile pas, "pan" n'est pas déclaré.
J'ai fait une déclaration par défaut pour tester et j'ai ajouté un setPreferredSize sur le bouton valider, ça fonctionne :

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.GridLayout;

import javax.swing.JButton;
import javax.swing.JFormattedTextField;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class Panneau {

public static void main(String[] args) {

JLabel labNom = new JLabel("Le nom complet ");
JFormattedTextField nom = new JFormattedTextField();
JButton valider = new JButton("valider");
JPanel formulaire = new JPanel();
JPanel pan = new JPanel();
pan.setLayout(new BorderLayout());
formulaire.setLayout(new GridLayout(5, 1));
JPanel pan1 = new JPanel();
pan1.add(labNom);
pan1.add(nom);
valider.setPreferredSize(new Dimension(250, 100));
formulaire.add(valider);
JFrame fenetre = new JFrame("dimensionnement bouton");
fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
fenetre.setContentPane(formulaire);
fenetre.pack();
fenetre.setLocationRelativeTo(null);
fenetre.setVisible(true);

}

}
2
cs_jojolemariole Messages postés 519 Date d'inscription mercredi 21 mars 2007 Statut Membre Dernière intervention 19 décembre 2016 25
28 mars 2011 à 11:58
Salut,

À ma connaissance, c'est impossible puisque le GridLayout se charge de dimensionner tes composants. Tu peux par contre ruser en mettant le JButton dans un JPanel intermédiaire.
0
langagec08 Messages postés 72 Date d'inscription mardi 30 mars 2010 Statut Membre Dernière intervention 22 août 2011 1
28 mars 2011 à 18:29
merciii jojolemariole pour ta réponse. En fait c'est bien ce que j ai fait mais le problème c'est que ça prend la dimension de tout le JPanel et j'arrive pas à redimensionner le JPanel...
0
cs_jojolemariole Messages postés 519 Date d'inscription mercredi 21 mars 2007 Statut Membre Dernière intervention 19 décembre 2016 25
28 mars 2011 à 18:47
Re,

Quel layout as-tu défini pour ton JPanel "intermédiaire" ?
Par défaut c'est un FlowLayout qui respecte les dimensions définies par l'utilisateur.

Comment as-tu défini la dimension de ton bouton ?
Tu as 3 attributs spécifiables :
minimumSize, maximumSize et preferredSize

+ size qui te donne la taille effective

En général, on passe par preferredSize :
monBouton.setPreferredSize(new Dimension(80, 30));

Pour s'assurer qu'on comprenne bien ton problème, ce serait mieux d'avoir ton code. Ou du moins, le nécessaire pour constater le problème.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
langagec08 Messages postés 72 Date d'inscription mardi 30 mars 2010 Statut Membre Dernière intervention 22 août 2011 1
28 mars 2011 à 19:09
Merci beaucoup JOJolemariole pour ton aide.c'est trés sympa de ta part..j'ai déja utiliser le setPreferredsize mais ça marche pas ...voila mon code...Je compte sur votre aide, je suis vraiment bloqué:
/*definition des éléments : il y en d'autre dans mon code */
JLabel labNom = new JLabel("Le nom complet ");
JFormattedTextField nom =new JFormattedTextField();
JButton valider=new JButton("valider");
JPanel formulaire=new JPanel();
pan.setLayout(new BorderLayout());
formulaire.setLayout(new GridLayout(5,1));
JPanel pan1=new JPanel();
pan1.add(labNom);
pan1.add(nom);
JPanel pan5=new JPanel();

pan5.add(valider);

formulaire.add(pan5);
Merci d'avance
0
langagec08 Messages postés 72 Date d'inscription mardi 30 mars 2010 Statut Membre Dernière intervention 22 août 2011 1
29 mars 2011 à 17:01
Merciii infiniment jojolemariole pour ton aide..........tu m'as sauvé la vie ...en fait je me suis trompé sur l'emplacement du valider.setPreferredSize(new Dimension(250, 100)); je le faisais aprés le .add....merci encore une fois.
0
Rejoignez-nous