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 :

création d'une scrollable Textarea


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    314
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 314
    Par défaut création d'une scrollable Textarea
    Bonjour,

    j'essaie de mettre en place Scrollable Textarea.
    Pour ce j'insère ma JTextArea dans un JScrollPane.
    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    textAreaComment = new JTextArea();
    textAreaScrollPane = new JScrollPane(textAreaComment);
            textAreaScrollPane.setVerticalScrollBarPolicy( JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
            textAreaScrollPane.setPreferredSize(new Dimension(250, 250));
    textAreaComment.setEditable(true);
    Cependant j'obtiens à la place de la TextArea défilable un scrollPane vide dans lequel je ne rien rentrer;

    Quelqu'un aurait une idée ?

    Merci.

  2. #2
    Membre confirmé Avatar de philobedo
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2004
    Messages : 80
    Par défaut
    Un truc du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
           JTextArea champTexteEd = new JTextArea();
    	champTexteEd.setLineWrap(true);
    	champTexteEd.setWrapStyleWord(true);
    	champTexteEd.setSelectedTextColor(Color.RED);
    	champTexteEd.setFont(new Font("Dialog",Font.BOLD,10));
    	JScrollPane jscrollEd = new JScrollPane(champTexteEd);
    	JScrollBar jsb = jscrollEd.getVerticalScrollBar();
    	jsb.setValue(jsb.getMaximum());
    fonctionne plutot pas mal.

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    429
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 429
    Par défaut
    Bonjour,

    Je ne comprends pas trop ton problème. J'ai copié ton code dans la classe ci-dessous, et... cela semble fonctionner : zone de texte dans laquelle on rentre ce que l'on veut, et qui se met à défiler quand c'est nécessaire.

    Cordialement,

    Nicolas

    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
    import java.awt.Dimension;
    import javax.swing.JFrame;
    import javax.swing.JScrollPane;
    import javax.swing.JTextArea;
     
    public class TestScrollBar {
     
        public static void main(String[] args) {
     
            JFrame frame = new JFrame();
            frame.setSize(300,300);
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frame.setResizable(false);
     
            JTextArea textAreaComment = new JTextArea();
            JScrollPane textAreaScrollPane = new JScrollPane(textAreaComment);
            textAreaScrollPane.setVerticalScrollBarPolicy( JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
            textAreaScrollPane.setPreferredSize(new Dimension(250, 250));
            textAreaComment.setEditable(true);
     
            frame.getContentPane().add(textAreaScrollPane);
            frame.setVisible(true); 
        } 
    }

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    314
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 314
    Par défaut
    J'ai retesté mon code et c'est toujours pareil.
    J'obtiens une zone grisé à la place de la JTextArea.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    314
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 314
    Par défaut
    le fait de mettre le layout à null peut-il provoquer ce bug ?

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    314
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 314
    Par défaut
    j'ai trouvé d'ou viens le bug.
    Le JScrollPane est ajouté dans un JPanel. Lorsque je l'ajoute dans la JFrame la JTextArea est bien affiché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
     
    import java.awt.Color;
    import java.awt.Dimension;
     
    import javax.swing.BorderFactory;
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.JScrollPane;
    import javax.swing.JTextArea;
     
    public class TestScrollBar extends JFrame{
     
        public TestScrollBar()
        {
        	setLayout(null);
            setSize(300,300);
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            setResizable(false);
     
            JTextArea textAreaComment = new JTextArea();
            JScrollPane textAreaScrollPane = new JScrollPane(textAreaComment);
            textAreaComment.setBounds(10, 10, 200, 50);
            textAreaScrollPane.setLayout(null);
            textAreaScrollPane.setBounds(10, 10, 200, 50);
            textAreaScrollPane.setBorder(BorderFactory.createLineBorder(Color.BLACK));
            //frame.add(textAreaScrollPane);
     
            JPanel p = new JPanel();
            p.setLayout(null);
            p.add(textAreaScrollPane);
            p.setBounds(0, 0, 500, 500);
            setSize(800,600);
            setVisible(true);
            this.add(p);
        }
     
    	public static void main(String[] args) {
     
            TestScrollBar t = new TestScrollBar();
     
     
     
        } 
    }

Discussions similaires

  1. Réponses: 14
    Dernier message: 09/04/2004, 13h44
  2. [amc designer] création d'une base postgresql
    Par david42 dans le forum PostgreSQL
    Réponses: 9
    Dernier message: 12/03/2004, 11h08
  3. Création d'une base avec IbConsole
    Par Lucien dans le forum Outils
    Réponses: 3
    Dernier message: 02/03/2004, 18h34
  4. création d'une batabse .gdb
    Par jejestyle dans le forum Bases de données
    Réponses: 3
    Dernier message: 23/02/2004, 00h29
  5. [BES] Création d'une variable d'environnement
    Par NGI80 dans le forum Autres
    Réponses: 2
    Dernier message: 17/10/2002, 07h31

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