IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Agents de placement/Fenêtres Java Discussion :

Définir une taille fixe pour mes boutons dans un GridLayout


Sujet :

Agents de placement/Fenêtres Java

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 39
    Points : 24
    Points
    24
    Par défaut Définir une taille fixe pour mes boutons dans un GridLayout
    salut tout le monde, un nouveau prb cosmétique que je ne parviens pas à résoudre pour mon petit projet java :
    j'ai une fenetre avec un borderLayout :
    - WEST = une image d'habillage pour faire joli
    - CENTER = un gridLayout dans lequel j'ai 3 gros boutons les uns en dessous des autres

    Le problème est que ces 3 boutons occupent tout l'espace, pas moyen de réduire leur taille. En cherchant un peu sur google j'ai trouvé les fonctions "setPreferredSize" et "setMinimumSize"

    je les ai essayé sur le 1er bouton, pas d'erreur de compilation mais la fonction est inopérante. ça ne fonctionne pas non plus avec "setSize"

    ci-dessous mon code

    // JPanel qui va contenir les boutons au centre de mon borderLayout
    JPanel jPanelboutons = new JPanel();
    GridLayout grd = new GridLayout(3,1);
    jPanelboutons.setLayout(grd);


    JButton boutonAjoute = new JButton("Ajouter un nouveau client");
    boutonAjoute.setPreferredSize(new Dimension(100,50));
    boutonAjoute.setMinimumSize(new Dimension(80,40));

    jPanelboutons.add(boutonAjoute);
    actionNewClient nc = new actionNewClient();
    boutonAjoute.addActionListener(nc);
    jPanelboutons.add(boutonAjoute);

    JButton boutonRecherche = new JButton("Rechercher un client");
    jPanelboutons.add(boutonRecherche);
    actionNewRecherche rc = new actionNewRecherche();
    boutonRecherche.addActionListener(rc);

    JButton boutonListe = new JButton("Consulter la liste des clients");
    jPanelboutons.add(boutonListe);
    actionNewListe nl = new actionNewListe();
    boutonListe.addActionListener(nl);


    // insertion du panel central dans la fenetre
    onglet1.add(jPanelboutons,BorderLayout.CENTER);
    je précise que j'ai trouvé une autre méthode qui consiste à donner des dimensions, mais elle oblige aussi à donner des coordonnées aux boutons, j'aimerais autant l'éviter afin que mes boutons restent centrés dans chaque case de mon GridLayout si on redimensionne la fenetre générale.

    merci d'avance pour vos suggestions

  2. #2
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    C'est juste que tu as choisi le mauvais layout... En effet, le GridLayout pour faire en sorte que tous les composants aient la même taille et qu'ils remplissent tout l'espace disponible.

    Dans ton cas il vaudrait mieux que tu te diriges vers un BoxLayout ou un GridBagLayout

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 39
    Points : 24
    Points
    24
    Par défaut
    Merci pour l'info, je suis parti sur une base de GridBagLayout et ça va bcp mieux, j'ai pu déterminer la taille de mes 3 boutons


    par contre je ne suis pas parvenu à mettre un peu d'espace entre les boutons pour les séparer (toujours sans devoir entrer des coordonnées de positionnement)

  4. #4
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Tu a les insets des GridBagConstraints qui sont là pour ça

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Google Maps] Définir une taille spécifique pour l'infowindow
    Par xillibit dans le forum APIs Google
    Réponses: 3
    Dernier message: 30/09/2011, 18h29
  2. Quel layout pour organiser mes boutons dans une JFrame ?
    Par zangaloni dans le forum Agents de placement/Fenêtres
    Réponses: 7
    Dernier message: 31/03/2009, 16h44
  3. Définir une taille fixe pour une date
    Par Mystic eyes dans le forum SQL*Loader
    Réponses: 7
    Dernier message: 28/11/2008, 16h55
  4. Créer un bouton avec une taille fixe
    Par onejock dans le forum Graphisme
    Réponses: 10
    Dernier message: 02/04/2007, 15h23
  5. [CSS]Définir une taille pour chaque police
    Par Davboc dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 27/12/2005, 18h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo