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

AWT/Swing Java Discussion :

Ajout d'un bouton qui change la dimension d'autres composants


Sujet :

AWT/Swing Java

  1. #1
    Membre régulier
    Inscrit en
    Novembre 2005
    Messages
    188
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 188
    Points : 106
    Points
    106
    Par défaut Ajout d'un bouton qui change la dimension d'autres composants
    Bonjour,

    J'ai une fenetre qui est constituée:

    - d'un JLabel suivi d'un TextField.
    - d'un JLabel suivi d'un JComboBox
    - d'un JLabel suivi d'un JTextArea
    - d'un JLabel suivi d'un JTextArea

    Voici le code associée:

    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
     public RuleEditFenetre(){
            super();
            build();
        }
     
        private void build(){
            setTitle("Edition d'une règle");
            setSize(400,400);
            // On dit à l'application de se fermer lors du clic sur la croix
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            setContentPane(buildContentPane());
        }
     
    private JPanel buildContentPane(){
            JPanel panel = new JPanel();
            panel.setLayout(new GridBagLayout());
     
            nameRuleLabel = new JLabel("Nom de la règle:");
            nameGroupRuleLabel = new JLabel("Nom du groupe de la règle:");
            whenRuleLabel = new JLabel("Conditions:");
            thenRuleLabel = new JLabel("Conséquences:");
     
            nameRuleValue = new JTextField();
            nameRuleValue.setColumns(10);
     
            whenRuleValue = new JTextArea();
            thenRuleValue = new JTextArea();
     
            Object[] elements = new Object[]{"BCS", "RAP", "CV"};
            nameGroupRuleValue = new JComboBox(elements);
     
            JScrollPane scrollPane1 = new JScrollPane(whenRuleValue);
            scrollPane1.setPreferredSize(new Dimension(200,100));
     
            JScrollPane scrollPane2 = new JScrollPane(thenRuleValue);
            scrollPane2.setPreferredSize(new Dimension(200,100));  
     
            bouton = new JButton("Editer la règle");
     
            GridBagConstraints gbc = new GridBagConstraints();
     
            gbc.insets = new Insets(10, 10, 10, 10);
     
            gbc.gridx=0;
            gbc.gridy=0;
            panel.add(nameRuleLabel, gbc);  
     
            gbc.gridx=1;
            gbc.gridy=0;
     
            panel.add(nameRuleValue, gbc);
     
            gbc.gridx=0;
            gbc.gridy=1;
            panel.add(nameGroupRuleLabel, gbc);
     
            gbc.gridx=1;
            gbc.gridy=1;
            panel.add(nameGroupRuleValue, gbc);
     
            gbc.gridx=0;
            gbc.gridy=2;
            panel.add(whenRuleLabel, gbc);
     
            gbc.gridx=1;
            gbc.gridy=2;
            panel.add(scrollPane1, gbc);
     
            gbc.gridx=0;
            gbc.gridy=3;        panel.add(thenRuleLabel, gbc);
     
            gbc.gridx=1;
            gbc.gridy=3;
            panel.add(scrollPane2, gbc);
     
            return panel;
        }
    Si j'essaie de rajouter un bouton en dessous de tous ces composants:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    gbc.gridx=0;
    gbc.gridy=4;
    panel.add(bouton, gbc);
    Il me diminue la taille de mes TextField et de mon TextArea.

    Comment peut-on expliquer cela?

    Merci :-)

  2. #2
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    Utilise la méthode pack() et dans ce cas là, n'utilise pas le setSize sur ta Frame.
    La taille sera calculée en fonction de la taille de tes composants.

  3. #3
    Membre régulier
    Inscrit en
    Novembre 2005
    Messages
    188
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 188
    Points : 106
    Points
    106
    Par défaut Re
    Merci bcp, ca marche :-)

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

Discussions similaires

  1. Bouton qui change d'image en survolant
    Par Madmata dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 06/12/2010, 10h04
  2. bouton qui change la taille d'un div..
    Par bilcosby dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 15/10/2009, 14h07
  3. Créer un bouton qui change la couleur d'un cellule
    Par Tony. dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 10/09/2008, 15h51

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