Definir la dimension d'un jbutton dans java [Résolu]

Messages postés
72
Date d'inscription
mardi 30 mars 2010
Dernière intervention
22 août 2011
- - Dernière réponse : langagec08
Messages postés
72
Date d'inscription
mardi 30 mars 2010
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
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
Messages postés
519
Date d'inscription
mercredi 21 mars 2007
Dernière intervention
19 décembre 2016
2
Merci
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);

}

}

Dire « Merci » 2

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 104 internautes ce mois-ci

Commenter la réponse de cs_jojolemariole
Messages postés
519
Date d'inscription
mercredi 21 mars 2007
Dernière intervention
19 décembre 2016
0
Merci
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.
Commenter la réponse de cs_jojolemariole
Messages postés
72
Date d'inscription
mardi 30 mars 2010
Dernière intervention
22 août 2011
0
Merci
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...
Commenter la réponse de langagec08
Messages postés
519
Date d'inscription
mercredi 21 mars 2007
Dernière intervention
19 décembre 2016
0
Merci
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.
Commenter la réponse de cs_jojolemariole
Messages postés
72
Date d'inscription
mardi 30 mars 2010
Dernière intervention
22 août 2011
0
Merci
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
Commenter la réponse de langagec08
Messages postés
72
Date d'inscription
mardi 30 mars 2010
Dernière intervention
22 août 2011
0
Merci
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.
Commenter la réponse de langagec08

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.