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 :

Ajouter un JScrollPane a un JPanel


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Avril 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 9
    Par défaut Ajouter un JScrollPane a un JPanel
    Bonjour,
    Je dois ajouter un JScrollPane a un JPanel qui contient un tableau de JTextField mais je ne sais pas comment ajouter le JScrollPane si vous pouvez m'aider voila le code et Merci d'avance
    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
    98
     
    import java.awt.*;
    import java.io.*;
    import javax.swing.*; // gerer l'interface graphique
    import java.awt.event.*;// gérer les evenements
    public class GestionTextField extends JFrame
    {   //déclaration des variables        
        private JFrame       frameGestion;      
        private JPanel       panelGestion;
        private Container    cGestion;
        private JButton      btGestion; 
        private JLabel       lblGestion;
        private JTextField   txtGestion []= new JTextField[50];;
        private int          i=20, j=40, k=0; 
        private JScrollPane  jBar;  ///////////////////////////////
     
       /*<*><*><*><*><*><*> - Constructeur - <*><*><*><*><*><*><*/
        public GestionTextField() 
        {    //////////Instancier les variables ////////////
             frameGestion = new JFrame("Gestion des TextField");
             cGestion = frameGestion.getContentPane(); 
             panelGestion = new JPanel();
             btGestion = new JButton("Fermer");
             lblGestion=new JLabel("Les TextField :");
             jBar = new JScrollPane(); /////////////////////////////////////////////
     
             for(i=0;i<50;i++)
             {     txtGestion[i] = new JTextField();
                   txtGestion[i].addActionListener(ajouterTxt); 
             }
            //////// Configurer les composantes /////////          
            cGestion.setLayout(null);
            frameGestion.setBounds(0, 0, 600, 600);
     
            lblGestion.setBounds(20,20,140,30);
            lblGestion.setFont(new Font("Dialog",Font.BOLD,18));
            frameGestion.add(lblGestion);        
     
            btGestion.setBounds(230,520,100,30);
            btGestion.setForeground(Color.black);
            frameGestion.add(btGestion); 
     
            panelGestion.setLayout(null);
            panelGestion.setBounds(0,70,600,400);
     
            jBar = new JScrollPane(panelGestion);/////////////////////////////////
     
            txtGestion[0].setBounds(20,0,500,30);
            panelGestion.add(txtGestion[0]);
     
            panelGestion.setPreferredSize(new Dimension(1000,1000));
            add(jBar);/////////////////////////////////////////////////////////////
     
            panelGestion.setVisible(true);
            frameGestion.getContentPane().add(panelGestion);
            frameGestion.setVisible(true); 
     
           ////La fermeture de la fenêtre 
           frameGestion.addWindowListener(new WindowListener() 
           {        public void windowOpened(WindowEvent e) {    }
                    public void windowClosing(WindowEvent e) 
                    {    frameGestion.setVisible(false);
                    }
                    public void windowClosed(WindowEvent e) { }
                    public void windowIconified(WindowEvent e) { }
                    public void windowDeiconified(WindowEvent e) { }
                    public void windowActivated(WindowEvent e) { }
                    public void windowDeactivated(WindowEvent e) {  }
            });
            ////ecouteur des évenements de boutons 
            btGestion.addActionListener(boutonAct); //pour fermer la fenetre 
       }
       /*<*><*><*>L'ecouteur sur le btGestion pr fermer la fenetre<*><*><*>*/
        private ActionListener boutonAct = new ActionListener() 
        {    public void actionPerformed(ActionEvent e) 
             {      if (e.getSource() == btGestion)  
                    {  frameGestion.setVisible(false);
                    }
              }
        };
        /*<*><*><* L'ecouteur sur le txtGestion pr ajouter TextField *<*><*>*/
        private ActionListener ajouterTxt = new ActionListener() 
        {    public void actionPerformed(ActionEvent e) 
             {      if (e.getSource() == txtGestion[k])  
                    {  txtGestion[k+1].setBounds(20,j,500,30);
                       j=j+40;
                       txtGestion[k+1].setText(" ");
                       panelGestion.add(txtGestion[k+1]);
                       panelGestion.setVisible(true);
                       k=k+1; 
                    }
              }
        }; 
        /*<*><*><*><*><*><*La fonction Main *><*><*><*><*><*><*>*/
        public static void main(String[] args) 
        {  GestionTextField essaye = new GestionTextField();     
        }
      }

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

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    Enf ait c'est dans l'autre sens qu'il faut comprendre la chose, il faut que tu mettes ton JPanel dans le JScrollPane.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    JScrollPane sp = new JScrolPane(monPanel);
    Et donc au lieu de mettre directement ton JPanel dans ta JFrame, tu mets de JPanel dans le JScrollPane, JScrollPane que tu ajoutes à ta JFrame

  3. #3
    Membre habitué
    Inscrit en
    Avril 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 9
    Par défaut
    Salut,
    Merci d'avoir répondu a mon message
    En effet j'ai essayé d'abord de faire comme tu m'as indiqué

    JScrollPANE jBar = new JScrollPane(panelGestion);
    frameGestion.getContentPane().add(jBar);

    mais les composantes du JPanel n'apparait pas (j'ai un tableau de JTextField de grand taille 50) et aussi le JScrollPane
    Je ne sais pas ou se trouve l'erreur exactement
    si vous pouvez m'aider je serai vraiment reconnaissante

Discussions similaires

  1. Réponses: 3
    Dernier message: 08/03/2011, 21h53
  2. Réponses: 7
    Dernier message: 08/02/2010, 10h51
  3. Ajouter un JComponent dans un JPanel est ce possible?
    Par jlassiramzy dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 23/04/2007, 21h02
  4. ajouter une grille dans un jpanel qui contient un fond
    Par amerix dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 21/03/2007, 20h59
  5. [Ultra debutant] ajout de composant dans un jpanel
    Par miniseb dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 13/05/2006, 19h27

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