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 :

JOptionPane et JScrollPane


Sujet :

Agents de placement/Fenêtres Java

  1. #1
    Membre régulier Avatar de calypso
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 102
    Points : 100
    Points
    100
    Par défaut JOptionPane et JScrollPane
    Bonjour,

    Il est possible de donner comme message a une JOptionPane un composant pour qu'elle l'affiche. Cependant, si je lui demande d'afficher une JScrollPane, quand le texte est trop long, elle l'agrandit au maximum. N'etant pas resisable, ca ne donne rien

    Est il donc possible d'afficher le texte d'une JOptionPane dans un JScrollPane??

  2. #2
    Membre régulier Avatar de kaisse
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 100
    Points : 117
    Points
    117
    Par défaut
    J'ai essaye, ce que tu proposes semble marcher.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    JOptionPane pane = new JOptionPane (/* Tes arguments */);
    JDialog dialog = new JDialog ();
    dialog.getContentPane().add (new JScrollPane (pane));
     
    dialog.setVisible(true);
    Le seul probleme, c'est que c'est tout le Pane qui est dans le scroll, donc si il est trop grand, tu verras par exemple que l'icone et le debut du message mais, pas le bouton. La premiere solution que tu as adopte me semble mieux. Essaye de resoudre les problemes de taille en surchargeant les methodes getPreferredSize() et getMaximumSize() des bons composants

  3. #3
    Membre régulier Avatar de calypso
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 102
    Points : 100
    Points
    100
    Par défaut
    merci beaucoup, grace a ton aide et un peu de reflexion, j ai trouve..

    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
     
     
          if(message instanceof String)
          {
             JTextArea area = new JTextArea((String)message);
             area.setOpaque(false);
             area.setEditable(false);
             JScrollPane scroll = new JScrollPane(area);
             message = scroll;
          }
     
          final JOptionPane optionPane = new JOptionPane(message, messageType);
     
          final JDialog dialog = new JDialog((Frame)null, title);
          dialog.getContentPane().add(optionPane);
          dialog.setLocationRelativeTo(parentComponent);
          dialog.setModal(true);
          dialog.setSize(200,350);
     
          dialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
     
          dialog.addWindowListener(new WindowAdapter() {
              public void windowClosing(WindowEvent we) {
                  dialog.dispose();
              }
          });
          optionPane.addPropertyChangeListener(
              new PropertyChangeListener() {
                  public void propertyChange(PropertyChangeEvent e) {
                      String prop = e.getPropertyName();
     
                      if (dialog.isVisible()
                       && (e.getSource() == optionPane)
                       && (prop.equals(JOptionPane.VALUE_PROPERTY))) {
                          //If you were going to check something
                          //before closing the window, you'd do
                          //it here.
                          dialog.setVisible(false);
                      }
                  }
              });
     
          dialog.setVisible(true);
    Voila..[/code]

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

Discussions similaires

  1. [JFrame][JScrollPane] rafraichissement
    Par iuz dans le forum Agents de placement/Fenêtres
    Réponses: 5
    Dernier message: 14/05/2004, 11h08
  2. [JSCROLLPANE][JTABLE] Probleme de raf...
    Par thibaud dans le forum Composants
    Réponses: 5
    Dernier message: 04/05/2004, 11h26
  3. [JScrollPane]Comment savoir quand une scrollbar apparait ?
    Par FrigoAcide dans le forum Composants
    Réponses: 4
    Dernier message: 29/04/2004, 10h10
  4. [SWT]équivalent des JOptionPane Swing
    Par Le Marlou dans le forum SWT/JFace
    Réponses: 1
    Dernier message: 18/02/2004, 10h56
  5. [JScrollPane] élargir la taille
    Par nyny_p dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 03/05/2003, 10h54

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