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 d'alignement de JComboBox


Sujet :

Agents de placement/Fenêtres Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2008
    Messages : 48
    Par défaut problème d'alignement de JComboBox
    voilà j'ai un petit souci avec mon interface
    j'ai fais un petit programme rapide qui résume mon problème

    quand je veux faire défiler la JComboBox et que celle ci se trouve dans le bas de l'interface (quand la JComboBox depasse le bas de l'interface) ca fonctionne bien

    par contre quand la JComboBox se trouve dans le haut de l'interface ... y'a rien qui se passe

    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
     
    import java.awt.*;
    import javax.swing.*;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener ;
     
    public class Ex { 
     
        private Button search = new Button("Rechercher");
     
        JFrame frame = new JFrame("Ex");
     
        private TextField a = new TextField(20);
        private TextField b = new TextField(20);
        private TextField c = new TextField(20);
        private TextField d = new TextField(20);
        private TextField e = new TextField(20);
        private TextField f = new TextField(20);
     
        Ex() {
     
               JFrame frame = new JFrame ("Ex");
     
               Panel p = new Panel();
               p.setLayout(new GridLayout(6, 2));
     
               p.add(new Label("",Label.CENTER)) ;
               String[] searchList = { "Albert", "Jean", "Charles", "Nicolas", "Cedric", "Roger"};
               JComboBox searchListe1 = new JComboBox(searchList);
               p.add(searchListe1);
               p.add(a);
     
               p.add(new Label("",Label.CENTER)) ;
               JComboBox searchListe2 = new JComboBox(searchList);
               p.add(searchListe2);
               p.add(b);
     
               p.add(new Label("",Label.CENTER)) ;
               JComboBox searchListe3 = new JComboBox(searchList);
               p.add(searchListe3);
               p.add(c);
     
               p.add(new Label("",Label.CENTER)) ;
               JComboBox searchListe4 = new JComboBox(searchList);
               p.add(searchListe4);
               p.add(d);
     
               p.add(new Label("",Label.CENTER)) ;
               JComboBox searchListe5 = new JComboBox(searchList);
               p.add(searchListe5);
               p.add(e);        
     
               p.add(new Label("",Label.CENTER)) ;
               JComboBox searchListe6 = new JComboBox(searchList);
               p.add(searchListe6);
               p.add(f);
     
               Panel bouton = new Panel();
               bouton.add(search);
               p.add("South", bouton);
     
               frame.add(p);
               frame.pack();
               frame.setVisible(true);
            }
    }
    quelqu'un a une idée pour résoudre ce problème

  2. #2
    Membre confirmé
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    65
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Par défaut
    C'est effectivement bizarre

    Si tu utilise le getContentePane() au lieu de créer un panel et l'ajouter à ta frame les choses s'améliorent un peu

    Sinon il faut utiliser
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    org.jdesktop.layout.GroupLayout
    et ses méthodes setHorizontalGroup et setVerticalGroup

    Je te conseil d'utiliser NetBeans () pour cette interface et tout va rentrer dans l'ordre.

  3. #3
    Membre chevronné Avatar de ngpub
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    449
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 449
    Par défaut
    Entre AWT et SWING il faut choisir, là tu mélanges les deux c'est un peu trop téméraire pour la VM.

    Et le GridLayout c'est simpa mais il faut de la place pour tout le monde, au minimum une case par composant.

    Et pour finir, ok le bouton il a son panel mais le panel on ne le met pas n'importe où.

    Enfin, voilà ton code corrigé :

    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
     
    import java.awt.BorderLayout;
    import java.awt.GridLayout;
     
    import javax.swing.*;
     
    public class Ex { 
     
        private JButton search = new JButton("Rechercher");
     
        JFrame frame = new JFrame("Ex");
     
        private JTextField a = new JTextField(20);
        private JTextField b = new JTextField(20);
        private JTextField c = new JTextField(20);
        private JTextField d = new JTextField(20);
        private JTextField e = new JTextField(20);
        private JTextField f = new JTextField(20);
     
        Ex() {
     
               JFrame frame = new JFrame ("Ex");
     
               JPanel mainPanel = new JPanel(new GridLayout(6, 3));
     
               String[] searchList = { "Albert", "Jean", "Charles", "Nicolas", "Cedric", "Roger"};
     
               mainPanel.add(new JLabel("A",JLabel.CENTER)) ;
               JComboBox searchListe1 = new JComboBox(searchList);
               mainPanel.add(searchListe1);
               mainPanel.add(a);
     
               mainPanel.add(new JLabel("B",JLabel.CENTER)) ;
               JComboBox searchListe2 = new JComboBox(searchList);
               mainPanel.add(searchListe2);
               mainPanel.add(b);
     
               mainPanel.add(new JLabel("C",JLabel.CENTER)) ;
               JComboBox searchListe3 = new JComboBox(searchList);
               mainPanel.add(searchListe3);
               mainPanel.add(c);
     
               mainPanel.add(new JLabel("D",JLabel.CENTER)) ;
               JComboBox searchListe4 = new JComboBox(searchList);
               mainPanel.add(searchListe4);
               mainPanel.add(d);
     
               mainPanel.add(new JLabel("E",JLabel.CENTER)) ;
               JComboBox searchListe5 = new JComboBox(searchList);
               mainPanel.add(searchListe5);
               mainPanel.add(e);        
     
               mainPanel.add(new JLabel("F",JLabel.CENTER)) ;
               JComboBox searchListe6 = new JComboBox(searchList);
               mainPanel.add(searchListe6);
               mainPanel.add(f);
     
               JPanel boutonsPanel = new JPanel();
               boutonsPanel.add(search);
     
               frame.add(mainPanel, BorderLayout.CENTER);
               frame.add(boutonsPanel, BorderLayout.SOUTH);
     
               frame.pack();
               frame.setVisible(true);
            }
     
        public static void main(String[] args) throws Exception {
     
            new Ex();
     
        }
     
    }

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2008
    Messages : 48
    Par défaut
    merci pour le correctif et les infos

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

Discussions similaires

  1. [CSS] Problème d'alignement des images
    Par Walabar dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 04/08/2006, 15h42
  2. débutant, problème d'alignement...
    Par celmakie dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 01/04/2006, 21h13
  3. problème d'alignement swing
    Par demonia dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 19/02/2006, 21h47
  4. Réponses: 1
    Dernier message: 22/12/2005, 11h23
  5. Problème d'alignement
    Par zorely dans le forum Mise en forme
    Réponses: 4
    Dernier message: 09/08/2005, 10h52

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