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 :

Redimensionner avec JSplitPane


Sujet :

Agents de placement/Fenêtres Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 825
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 825
    Par défaut Redimensionner avec JSplitPane
    Bonjour à tous,

    J'ai un JSplitPane qui sépare verticalement avec deux JTextArea, qui est ajouté à une JFrame.
    Lorsque je redimensionne la JFrame, c'est toujours la JTextArea du dessus qui garde sa taille et celle du dessous qui se redimensionne...

    Je voudrais que celle du bas ne se redimensionne pas, que ça soit celle du haut quoi change de taille lors du redimensionnement de la JFrame...

    C'est possible?

    Merci

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 825
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 825
    Par défaut
    Ha oui, petite précision...

    J'ai essayé avec:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    splitPane.setLayout(new BorderLayout());
    splitPane.add(textArea1, BorderLayout.NORTH);
    splitPane.add(textArea2, BorderLayout.CENTER);
    et comme ça, les deux JTextArea s'affichent mais pas le splitter....

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 118
    Par défaut
    essai avec ces methode:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    jsp.setDividerSize(5);//taille du jsp
    jsp.setResizeWeight(0.6);//% de redimensionnement
    je crois...

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 118
    Par défaut
    excuse moi, je viens de relire ton post et j'ai vu que c t la jframe que tu redimensionne donc je ne pense pas que ca marchera...

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    390
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 390
    Par défaut
    Voila une solution possible :
    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
    public class Test extends JFrame{
     
    	JSplitPane jsp;
     
    	JTextArea jp1;
    	JTextArea jp2;
     
    	boolean showTP = true;
     
    	public Test () {
    		super("Test");
     
    		jsp = new JSplitPane(JSplitPane.VERTICAL_SPLIT) {
    			public void paintComponent(Graphics g) {
    				super.paintComponent(g);
    				setDividerLocation(getSize().height - getBottomComponent().getHeight());
    			}
    		};
     
    		jsp.setDividerSize(5);
     
    		jp1 = new JTextArea();
     
    		jp2 = new JTextArea() {
    			public int getHeight() {
    				return 100;
    			}
    		};
     
    		jsp.setTopComponent(jp1);
    		jsp.setBottomComponent(jp2);
     
    		this.setSize(300,200);
    		this.getContentPane().add(jsp);
    	}
     
    	public static void main (String arg[]) {
    		Test t = new Test();
    		t.setVisible(true);
    		t.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    	}
    }
    Mais ceci bloque definitivement la taille du panneau du bas.
    A toi de creuser un peu si tu ne veux pas que ca le fasse.

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 825
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 825
    Par défaut
    j'vais attaquer ça tout à l'heure, j'vous tien au courant

    merci

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 825
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 825
    Par défaut
    erf ben nan ça marche pas ton truc, puisque la méthode paint redéfinir la position du splitter, et donc rapelle la méthode paint...

  8. #8
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    390
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 390
    Par défaut
    Arf, je n'avais pas fait attention que ca tournait en boucle.
    Voila une autre solution, mais qui n'est pas parfaite. Tu devrais pouvoir l'améliorer :

    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
    public class Test extends JFrame{
     
    	public static final int W_WIDTH = 300;
    	public static final int L_HEIGHT = 100;
    	public static final int B_HEIGHT = 200;
     
    	JSplitPane jsp;
     
    	JTextArea jp1;
    	JTextArea jp2;
     
    	boolean showTP = true;
     
    	public Test () {
    		super("Test");
     
    		jsp = new JSplitPane(JSplitPane.VERTICAL_SPLIT) {
    			public double getResizeWeight() {
    				return (getSize().height-100)/(double)getSize().height;
    			}
    		};
     
    		jsp.setDividerSize(5);
     
    		jp1 = new JTextArea();
    		jp2 = new JTextArea();
     
    		jsp.setTopComponent(jp1);
    		jsp.setBottomComponent(jp2);
    		this.setSize(300,200);
    		this.getContentPane().add(jsp);
    	}
     
    	public static void main (String arg[]) {
    		Test t = new Test();
    		t.setVisible(true);
    		t.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    	}
    }

  9. #9
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 825
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 825
    Par défaut
    ouaip c'est bon, y'a juste à revoyer 1 dans le ResizeHeight

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
         jsp = new JSplitPane(JSplitPane.VERTICAL_SPLIT) { 
             public double getResizeWeight() { 
                return 1; 
             } 
          };
    merci

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

Discussions similaires

  1. [JSlpitPane]Redimensionner la jsplitpane avec la souris
    Par ng.phung dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 28/06/2007, 10h37
  2. [débutant] Redimensionner avec SWT standalone
    Par Teaniel dans le forum SWT/JFace
    Réponses: 2
    Dernier message: 28/05/2007, 14h41
  3. Problème de redimensionnement avec beryl
    Par kamouminator dans le forum Applications et environnements graphiques
    Réponses: 11
    Dernier message: 08/12/2006, 00h03
  4. Séparation de fenêtre avec JSplitPane
    Par barbu0055 dans le forum Agents de placement/Fenêtres
    Réponses: 11
    Dernier message: 20/07/2005, 13h32
  5. Redimensionner avec le bord gauche et le bord haut
    Par WebPac dans le forum Composants VCL
    Réponses: 7
    Dernier message: 15/09/2004, 15h24

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