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 :

[JSplitPane+JScrollPane+JTable] Dimensionnement


Sujet :

Agents de placement/Fenêtres Java

  1. #1
    Membre du Club
    Homme Profil pro
    Concepteur/Développement
    Inscrit en
    Juin 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Concepteur/Développement
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2004
    Messages : 60
    Points : 52
    Points
    52
    Par défaut [JSplitPane+JScrollPane+JTable] Dimensionnement
    Bonjour,
    je rencontre un léger soucis de redimensionnement d'une JTable que je place dans un JScrollPane mis dans un Jpanel le tout placé dans un JSplitPane.

    IHM : Une JInternal frame présentant une colonne gauche avec deux panel Haut et Bas, une colonne droite pour un autre panel. La colonne gauche est définie par un JSplitPane. L'élément du haut est un JPanel contenant un Jtree et l'élément du bas (celui qui pose soucis) un JPanel contenant une JTable :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    	    jtable.setRowHeight(jtable.getRowHeight()+3); 
    	    //jtable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
    	    //TableColumn col = jtable.getColumnModel().getColumn(0);
    	    //col.setPreferredWidth(150); 
    		//Create the scroll pane and add the tree to it. 
    		JScrollPane tableView = new JScrollPane(jtable);
    		tableView.setColumnHeaderView(jtable.getTableHeader() );
    		tableView.getViewport().setView(jtable);
    		Dimension minimumSize = new Dimension(280, 280);
    		tableView.setMinimumSize(minimumSize);
    		tableView.setPreferredSize(minimumSize);
    		jp.add(tableView);
    		return jp;
    Pb : Lorsque je déplace le divider du splitpane, l'élément du bas ne se redimensionne pas, j'aimerais que la table prennent tout l'espace possible mais elle reste au minimumsize. Il semblerait que j'eusse oublié quelquechose hein ? car l'élément du haut (un Jtree mis dans un JScrollPane dans un JPanel) occupe toute la place possible !!

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Août 2004
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 85
    Points : 102
    Points
    102
    Par défaut
    Salut,
    Est-ce que tu as essayé de supprimer la ligne tableView.setPreferredSize(minimumSize) ?

  3. #3
    Membre du Club
    Homme Profil pro
    Concepteur/Développement
    Inscrit en
    Juin 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Concepteur/Développement
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2004
    Messages : 60
    Points : 52
    Points
    52
    Par défaut
    Oui, mais qd je fais cela le JInternalFrame prend une taille trop grande et la table conserve sa taille. Elle ne veut pas occuper tout l'espace du Panel ?!

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Août 2004
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 85
    Points : 102
    Points
    102
    Par défaut
    Bon plusieurs petites questions, histoire que je puisse faire un test qui se rapproche de ce que tu as fait :
    - Qu'est-ce que tu utilise comme Layout pour ta JInternalFrame ?
    - est-ce que la partie concernant l'ajout du JTree dans le scrollPane est la même ?
    - pour les Panels, layout par défaut ?

  5. #5
    Membre du Club
    Homme Profil pro
    Concepteur/Développement
    Inscrit en
    Juin 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Concepteur/Développement
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2004
    Messages : 60
    Points : 52
    Points
    52
    Par défaut
    - JInternalFrame : pas de layout explicite, je fais le add direct.
    - JTree : le panel est constitué ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    JPanel jp = new JPanel(new GridLayout(1,0));
    		//Create the scroll pane and add the tree to it. 
    		JScrollPane treeView = new JScrollPane(jtItem);
     
    		Dimension minimumSize = new Dimension(280, 200);
    		treeView.setMinimumSize(minimumSize);
    		treeView.setPreferredSize(minimumSize); 
    		jp.add(treeView);
    ce qui est identique à la JTable.
    - Les Panel : je les ai donc mis en GridLayout().

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Août 2004
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 85
    Points : 102
    Points
    102
    Par défaut
    Bon, ben j'ai testé comme ça :
    - je mets un BoxLayout sur le contentPane de la JInternalFrame.
    - Dans le splitPane, j'ajoute directement les scrollPane contenant la table et l'arbre.
    - En ce qui concerne l'ajout de la table dans le scrollPane, je m'occupe pô du viewPort :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    JScrollPane tableView = new JScrollPane(jtable);
    Dimension minimumSize = new Dimension(280,280);
    tableView.setMinimumSize(minimumSize);
    tableView.setPreferredSize(minimumSize);
    Et ça marche niquel 8) . Voilà, j'ai aussi testé avec la ligne tableView.setColumnHeaderView, j'ai pô vu de différence, alors je sait pas trop ce que ça fait.

    Tiens moi au courant.

  7. #7
    Membre du Club
    Homme Profil pro
    Concepteur/Développement
    Inscrit en
    Juin 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Concepteur/Développement
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2004
    Messages : 60
    Points : 52
    Points
    52
    Par défaut
    Bien joué !!

    Ok, effectivement comme ça, la table se redimensionne automatiquement à la taille maxi possible.

    Merci bôcoup.

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

Discussions similaires

  1. [JScrollPane] [JTable] Se placer à la dernière ligne
    Par wishnight dans le forum Composants
    Réponses: 9
    Dernier message: 24/12/2015, 18h42
  2. [Swing]JTable- Dimensionner les colonnes
    Par loutfi dans le forum Composants
    Réponses: 12
    Dernier message: 01/07/2011, 08h50
  3. [jTable] Dimensionner la hauteur de certaines lignes
    Par delma dans le forum Composants
    Réponses: 11
    Dernier message: 27/10/2006, 09h29
  4. [JScrollPane][JTable] déplacer l'ascenceur sur addRow
    Par Magguy dans le forum Composants
    Réponses: 3
    Dernier message: 19/11/2004, 16h15
  5. [JSCROLLPANE][JTABLE] Probleme de raf...
    Par thibaud dans le forum Composants
    Réponses: 5
    Dernier message: 04/05/2004, 11h26

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