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 :

Problème taille composant GridBagLayout


Sujet :

Agents de placement/Fenêtres Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2012
    Messages : 1
    Par défaut Problème taille composant GridBagLayout
    Bonjour,
    Je suis en 1ère année de DUT Informatique et je débute en JAVA. Je viens d'avoir récemment un projet : il s'agit d'un sudoku.
    Mon problème est le suivant : je planche sur le GridBagLayout, plus précisément sur la taille des boutons.
    Dans ma fenêtre, je souhaite avoir ma grille de sudoku, et à sa gauche les boutons 1,2,3,4,5,6,7,8,9,- permettant de mettre un chiffre dans une case ou d'annuler l'action (avec le boutton -).
    J'ai donc découpé ma fenêtre en 4 colonnes et 10 lignes. Ma grille prend alors comme taille 3 colonnes et 10 lignes, et mes boutons 1 colonne et 1 ligne.
    Mon problème est que la taille du bouton (en longueur) ne correspond pas à la taille d'une colonne, mais à la même longueur que la grille...
    Je n'arrive pas à comprendre pourquoi...

    Je vous joint mon code : (p correspond à ma grille)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    public class fenetre extends JFrame {
       private JToggleButton b1=new JToggleButton("-");
       private JToggleButton b2=new JToggleButton("1");
       private JToggleButton b3=new JToggleButton("2");
       private JToggleButton b4=new JToggleButton("3");
       private JToggleButton b5=new JToggleButton("4");
       private JToggleButton b6=new JToggleButton("5");
       private JToggleButton b7=new JToggleButton("6");
       private JToggleButton b8=new JToggleButton("7");
       private JToggleButton b9=new JToggleButton("8");
       private JToggleButton b10=new JToggleButton("9");
       private ButtonGroup bg=new ButtonGroup();
       private Panneau p;
     
       public fenetre(){
           this.setTitle("Sudoku");
           this.setSize(600,310);
           this.setLocationRelativeTo(null);
           this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
     
            p=new Panneau();
     
            bg.add(b1);
            bg.add(b2);
            bg.add(b3);
            bg.add(b4);
            bg.add(b5);
            bg.add(b6);
            bg.add(b7);
            bg.add(b8);
            bg.add(b9);
            bg.add(b10);
     
            GridBagLayout layout=new GridBagLayout();
            this.setLayout(layout);
            GridBagConstraints c=new GridBagConstraints();
     
            c.fill=GridBagConstraints.BOTH;     //POUR REMPLIR TOUT L ESPACE DE LA CASE
            c.weightx=100;              //POIDS A 100
            c.weighty=100;              //POIDS A 100
     
           ///////////////GRILLE//////////////////////
            c.gridx=0;      //COIN SUP GAUCHE
            c.gridy=0;      //COIN SUP GAUCHE
            c.gridwidth=3;  //S ETEND SUR 3 COLONNES
            c.gridheight=10; //S ETEND SUR 10 LIGNES
            this.add(p,c);   //ON AJOUTE
     
     
     
            ////////////BOUTONS//////////////////////
            //c.anchor=GridBagConstraints.EAST;
            c.gridwidth=1;  //S ETEND SUR 1 COLONNES
            c.gridheight=1; //S ETEND SUR 1 LIGNES
     
            c.gridx=3;
            c.gridy=0;
            this.add(b1,c);
     
            c.gridx=3;
            c.gridy=1;
            this.add(b2,c);
     
            c.gridx=3;
            c.gridy=2;
            this.add(b3,c);
     
            c.gridx=3;
            c.gridy=3;
            this.add(b4,c);
     
            c.gridx=3;
            c.gridy=4;
            this.add(b5,c);
            c.gridx=3;
            c.gridy=5;
            this.add(b6,c);
            c.gridx=3;
            c.gridy=6;
            this.add(b7,c);
     
            c.gridx=3;
            c.gridy=7;
            this.add(b8,c);
     
            c.gridx=3;
            c.gridy=8;
            this.add(b9,c);
     
            c.gridx=3;
            c.gridy=9;
            this.add(b10,c);
     
     
            this.setVisible(true);
       }
    }
    Je vous est également joint une image de ce que j'obtiens.
    Pour résumé, je voudrai que la longueur d'un bouton corresponde à la longueur d'une sous grille.

    Merci pour toutes réponses
    Images attachées Images attachées  

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 8
    Par défaut
    J'hésite a re-up car visiblement ça fais 15 jours que c'est rester sans réponse, mais bon.

    Pour ton problème d'après moi il faudrait que tu joues avec la taille de tes boutons, configure les grâce à setPreferredSize(Dimension) ou setMaximumSize(Dimension) (j'ai pas vérifié l'exactitude mais ça dois être dans ce genre).

    Essaye pour voir, c'est juste une idée , si tu as déjà résolu ton problème poste nous la solution qu'on soit fixé !

Discussions similaires

  1. Problème taille composants BoxLayout
    Par Shankara dans le forum Débuter
    Réponses: 3
    Dernier message: 05/08/2010, 22h42
  2. Problème placement composant GridBagLayout
    Par debutant123 dans le forum Interfaces Graphiques en Java
    Réponses: 3
    Dernier message: 17/04/2009, 18h58
  3. Taille composant perso via le layout ?
    Par Neilos dans le forum Composants
    Réponses: 6
    Dernier message: 04/12/2005, 17h33
  4. [C#]Problème sur composant perso (Bouton Transparent)
    Par SLE dans le forum Windows Forms
    Réponses: 1
    Dernier message: 06/10/2005, 00h12
  5. [VB.NET] Problème sur composant comboBox hérité
    Par SergeF dans le forum Windows Forms
    Réponses: 3
    Dernier message: 08/06/2004, 14h54

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