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 :

Evenement sur JSplitePane


Sujet :

Agents de placement/Fenêtres Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Avril 2007
    Messages
    360
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 360
    Par défaut Evenement sur JSplitePane
    Salut,
    je cherche l'evenement qui s'exécute lorsque je redimensionne la partie gauche ou droite de composant JSplitePane (cad lorsque je change avec la souris la taille de component de JSPlitePane)
    sachant que j'ai tester avec AddMouseListener etc..
    pour le click sur les petits flèches c'est OK mais lors de redimensionnement il ne marche pas pour l'instant.

    Merci d'avance.

  2. #2
    Membre émérite Avatar de herch
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    655
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2006
    Messages : 655
    Par défaut
    salut,
    tu pourrais utiliser un PropertyChangeListener et tu testes si la propriété qui a changé est "dividerLocation"
    exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    splitPane.addPropertyChangeListener(new PropertyChangeListener()
    {
    	public void propertyChange(PropertyChangeEvent evt)
    	{
    		if (evt.getPropertyName().equals("dividerLocation"))
    			System.out.println("Changement du divider location");
    	}
    });

  3. #3
    Membre éclairé
    Inscrit en
    Avril 2007
    Messages
    360
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 360
    Par défaut
    merci c'est juste la reponse que je cherche merci

  4. #4
    Membre éclairé
    Inscrit en
    Avril 2007
    Messages
    360
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 360
    Par défaut
    Salut, Bon mon truc est le suivant, j'ai crée un SplitePane, sur le component droit j'ai mis un panel et sur ce panel un composant JScrollPane , le probleme c'est que lorsque je change les dimensions de component droit, les dimensions de panel change mais celui de Scroll ne change pas meme si il ya un layout pour le panel et le scroll je lui fait setSize(dim de panel)
    voila le code de test
    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
    package Test_Graphe;
     
    import java.awt.Color;
     
    import java.beans.PropertyChangeEvent;
    import java.beans.PropertyChangeListener;
     
    import javax.swing.BorderFactory;
    import javax.swing.JFrame;
    import javax.swing.JPanel;
     
    import javax.swing.JScrollPane;
    import javax.swing.JSplitPane;
     
    import oracle.jdeveloper.layout.XYConstraints;
    import oracle.jdeveloper.layout.XYLayout;
     
    public class OKOK extends JFrame{
     
        private XYLayout xYLayout1 = new XYLayout();
        private JSplitPane jSplitPane1 = new JSplitPane();
        private JPanel jPanel1 = new JPanel();
        private JPanel jPanel2 = new JPanel();
        private XYLayout xYLayout4 = new XYLayout();
        private XYLayout xYLayout5 = new XYLayout();
        private JScrollPane jScrollPane1 = new JScrollPane();
     
        public OKOK() {
            try {
                jbInit();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
     
     
     
        private void jbInit() throws Exception {
            this.getContentPane().setLayout(xYLayout1);
            jPanel1.setLayout(xYLayout4);
            jPanel2.setLayout(xYLayout5);
            jPanel2.setBackground(Color.red);
            jScrollPane1.setBorder(BorderFactory.createLineBorder(Color.black, 1));
            jPanel1.setBackground(Color.BLUE);
            jPanel1.add(jScrollPane1, new XYConstraints(50, 5, 200, 100));
            jSplitPane1.add(jPanel1, JSplitPane.RIGHT);
            jSplitPane1.add(jPanel2, JSplitPane.LEFT);
            this.getContentPane().add(jSplitPane1, 
                                      new XYConstraints(20, 40, 335, 190));
            jSplitPane1.addPropertyChangeListener(new PropertyChangeListener()
            {
                    public void propertyChange(PropertyChangeEvent evt)
                    {
                           if (evt.getPropertyName().equals("dividerLocation")){
                                System.out.println("LOLO" + jPanel1.getSize());
                               // jPanel1.add(jScrollPane1., new XYConstraints(0, 0, jPanel1.getWidth(), 100));
                                jScrollPane1.setSize(jPanel1.getSize());
     
                           }                             
                    }
            });                          
        }
     
        public static void main(String[] args){
            OKOK ok = new OKOK();
            ok.setSize(600, 600);
            ok.setVisible(true);
        }
    }
    :

    le split ne peut se reduire moins de la taille de l'objet JScroll.

    Merci pour votre aide .

  5. #5
    Membre émérite Avatar de herch
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    655
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2006
    Messages : 655
    Par défaut
    pour qu'un composant puisse être "scrollable", il faut qu'il implémente l'interface Scrollable, ce qui n'est pas le cas pour JPanel, mais c'est le cas par exp pour JTextArea; Donc, tu dois créer une nouvelle classe qui hérite de JPanel et qui implémente l'interface Scrollable et que tu définisses ses méthodes
    http://www.java2s.com/Code/Java/Swin...lableLabel.htm

  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
    Citation Envoyé par herch Voir le message
    pour qu'un composant puisse être "scrollable", il faut qu'il implémente l'interface Scrollable
    Euh ou pas.
    Il suffit qu'il ait une preferredSize qui dépasse la taille actuelle du JScrollPane.

Discussions similaires

  1. [C#] Evenement sur classe virtual
    Par papouAlain dans le forum Windows Forms
    Réponses: 26
    Dernier message: 11/01/2005, 12h45
  2. Evenement sur UPDATE, INSERT, DELETE
    Par papouAlain dans le forum Langage SQL
    Réponses: 6
    Dernier message: 23/12/2004, 15h58
  3. Evenement sur objet dynamique
    Par CanardJM dans le forum AWT/Swing
    Réponses: 8
    Dernier message: 19/11/2004, 14h56
  4. Evenement sur les barres de défilement d'une ScrollBox
    Par Nico118 dans le forum C++Builder
    Réponses: 2
    Dernier message: 06/05/2004, 15h56
  5. [FLASH MX 2004] [ecouteur] evenements sur un clip
    Par marco_ dans le forum Flash
    Réponses: 2
    Dernier message: 30/04/2004, 14h28

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