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 :

Problème affichage JScrollPane


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 39
    Par défaut Problème affichage JScrollPane
    Bonjour,

    J'ai un problème concernant l'affichage du JScrollPane sur le mainPanel. . En fait ce que j'ai déjà fait est le suivant :

    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
     
    // le mainPanel et le mainPanelLayout
    mainPanel.setLayout(mainPanelLayout);
    mainPanelLayout.setHorizontalGroup( mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING));
    mainPanelLayout.setVerticalGroup( mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING));
     
    // Ajout des composants (champs textes, listes déroulantes, boutants ... ): je l'ai fait de la façon suiavnte :
     
    composant.setName("nameComp");        composant.setFont(resourceMap.getFont("composant.font"));
    composant.setForeground(resourceMap.getColor("composant.foreground"));
    composant.setBounds(170, 60, 600, 23);
    mainPanel.add(composant);
     
    // Ajout du scrollBar
    scrollF = new JScrollPane(mainPanel);
    scrollF.setVisible(true);
    mainPanel.setVisible(true);
    mainFrame.getContentPane().add(scrollF);
    mainFrame.getContentPane().add(mainPanel);
    mainFrame.setVisible(true);
    Le scrollBar ne s'affiche pas.
    SVP, quelqu'un pourrait me renseigner où est l'erreur ? Pourquoi le scrollBar ne s'affiche pas ? .... Je vous serais très reconnaissante.
    Merci

  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
    Tu as un problème avec les lignes suivantes:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mainFrame.getContentPane().add(scrollF); mainFrame.getContentPane().add(mainPanel);
    En effet tu as déjà ajouté mainPanel à scrollF lors de l'instanciation de ce dernier.
    De pas pas besoin d'ajouter mainPanel à ton contentPane.

    Donc tu dois supprimer d'urgence la seconde ligne, c'est elle qui fout la grouille.

  3. #3
    Membre averti
    Femme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 39
    Par défaut
    Merci Sinok.

    effectivement j'ai supprimé l'instruction : "mainFrame.getContentPane().add(mainPanel);" ,

    Le scrollBar ne s'affiche pas ... Étonnant

  4. #4
    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
    Il faut savoir que par défaut, les barres du JScrollPane n'apparaissent que quand le contenu est plus grand que le scrollpane en lui même.

    Le problème dans ton code vient du fait que tu utilises un nullLayout, Layout qui ne recalcule pas la taille des composants. De fait le composant que tu as mis dans ton mainPanel n'a aucune taille, donc ton mainPanel ne fait pas le calcul.

    Le plus simple pour toi serait d'arrêter d'utiliser le layout null et les setBounds et d'utiliser un Layout digne de ce nom.

    Que cherches tu à obtenir comme disposition dans ton Scrollpane?

  5. #5
    Membre averti
    Femme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 39
    Par défaut
    J'ai besoin du ScrollPane car le contenu depasse la longueur de la fenêtre. donc le ScrollBar doit apparaitre.

    Je suis tout à fait d'accord concernant:

    Le problème dans ton code vient du fait que tu utilises un nullLayout, Layout qui ne recalcule pas la taille des composants. De fait le composant que tu as mis dans ton mainPanel n'a aucune taille, donc ton mainPanel ne fait pas le calcul.

    Le plus simple pour toi serait d'arrêter d'utiliser le layout null et les setBounds et d'utiliser un Layout digne de ce nom.
    comment créer " un Layout digne de ce nom " ?

  6. #6
    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
    On utilise un LayoutLanager, tel qu'un BorderLayout, un BoxLayout, un GridLayout, un FlowLayout, un GridBagLayout...

    Cf le tutoriel suivant: http://download.oracle.com/javase/tu...ut/visual.html

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

Discussions similaires

  1. Problème affichage Jscrollpane
    Par Chamalowe dans le forum Composants
    Réponses: 3
    Dernier message: 23/05/2015, 18h36
  2. Problème affichage dans JScrollPane
    Par alex2746 dans le forum Composants
    Réponses: 3
    Dernier message: 15/11/2010, 12h02
  3. Problème avec JScrollPane et label
    Par gl0be dans le forum Agents de placement/Fenêtres
    Réponses: 6
    Dernier message: 26/11/2004, 17h08
  4. [Plugin][VE] Problème affichage
    Par sebb84 dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 05/07/2004, 14h50
  5. [DOS] Problème affichage de DOS dans un Memo
    Par Pedro dans le forum API, COM et SDKs
    Réponses: 9
    Dernier message: 25/06/2004, 13h31

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