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

Composants Java Discussion :

redimensionner colonne d'une table


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Novembre 2005
    Messages
    188
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 188
    Par défaut redimensionner colonne d'une table
    Bonjour,

    J'ai toujours des soucis de redimensionnement pour pouvoir définir exactement la largeur de chacune de mes colonnes de table.

    Par exemple, je définis dans un premier temps, la largeur et la hauter globale de ma table de cette facon:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
        public static void initTableSize(JTable table, int width) {
            // la table utilise la totalité de la hauteur du scrollbrar qui la contient.
            table.setFillsViewportHeight(true);
            JTableHeader headerRenderer = table.getTableHeader();
            Dimension dim = new Dimension(width, headerRenderer.getHeight() + table.getModel().getRowCount() * table.getRowHeight());
            table.setPreferredScrollableViewportSize(dim);
            table.setPreferredSize(dim);
        }
    Mais par la suite, si par exemple, je fais un :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    documentTable.getColumnModel().getColumn(0).setPreferredWidth(0)
    il va me diminuer un peu ma colonne, mais pas suffisemment, et donc je n'ai pas trouvé "d'équivalent" au redimensionnement manuel à la souris.

    Ma table étant initalisée comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    DocTableModel model = new DocTableModel(columnNames, documents);
    documentTable = new JTable(model);
    DocTableModel est le modèle personnalisée de ma table que j'ai défini, étendant AbstractTableModel.

    Une idée?

    Merci :-)

  2. #2
    Membre éclairé
    Inscrit en
    Novembre 2005
    Messages
    188
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 188
    Par défaut Re
    Re,

    J'ai réussi à forcer la taille d'une colonne avec setWidth, setMinWidth et setMaxWidth...

    Ce qui est etonnant quand même , c'est qu'en rajoutant ce debug:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
          // Debug
            System.out.println("Taille Colonne 0 : " + documentTable.getColumnModel().getColumn(0).getWidth());
            System.out.println("Taille Colonne 1 : " + documentTable.getColumnModel().getColumn(1).getWidth());
            System.out.println("Taille Colonne 2 : " + documentTable.getColumnModel().getColumn(2).getWidth());
    ca me donne:

    Taille Colonne 0 : 75
    Taille Colonne 1 : 75
    Taille Colonne 2 : 75

    Alors, que si je fixe réellement la taille de la colonne 0 à 75 avec setWidth, setMinWidth et setMaxWidth, j'ai une colonne vraiment beaucoup plus petite.

    Une explication?

    Merci :-)

Discussions similaires

  1. [FAQ] Redimensionner les colonnes d'une table
    Par datametric dans le forum Contribuez
    Réponses: 0
    Dernier message: 06/02/2013, 19h14
  2. [Firebird 1.5] nom des colonnes d'une table
    Par c0rwyn dans le forum SQL
    Réponses: 4
    Dernier message: 03/09/2004, 14h44
  3. intervertir les valeurs dans une colonne d'une table
    Par hammou dans le forum Débuter
    Réponses: 2
    Dernier message: 26/01/2004, 10h15
  4. Instruction SQL qui supprime une colonne d'une table
    Par tseg dans le forum Langage SQL
    Réponses: 2
    Dernier message: 31/10/2003, 20h47
  5. Ajout d'une colonne dans une table ...
    Par Djedjeridoo dans le forum SQL
    Réponses: 2
    Dernier message: 22/07/2003, 16h12

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