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 :

Jtable et sauvegarde de la taille des colonnes


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté Avatar de Lethal
    Profil pro
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2006
    Messages : 194
    Par défaut Jtable et sauvegarde de la taille des colonnes
    Bonjour,

    J'ai un petit problème avec les JTables de mon programme.

    En effet quand j'ai rajouté des données dans mon modèle je fais un fireTableDataChanged() sur mon modèle afin d'afficher la mise à jour dans la JTable.

    Le problème c'est que les tailles des colonnes de la JTable sont remises par défaut. Ce qui rend l'utilisation du programme assez pénible, dès qu'on rajoute une donnée il faut redimensionner les colonnes :s

    Qqun sait comment conserver/sauver la taille des colonnes?

  2. #2
    Membre éclairé
    Homme Profil pro
    NoOb
    Inscrit en
    Mai 2007
    Messages
    554
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : NoOb

    Informations forums :
    Inscription : Mai 2007
    Messages : 554
    Par défaut
    je suis newbie mais il y a les méthodes setMinWidth(taLargeur) / setMaxWidth(taLargeur) et setRowHeight(taHauteur);

    ca donne un truc dans le genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    jTableTest.setRowHeight(taHauteur);
     
    for(int i  = 0 ; i < leNombreDeColonne; i++) 
    {  
       jTableTest.getColumnModel().getColumn(i).setMinWidth(taLargeur);
       jTableTest.getColumnModel().getColumn(i).setMaxWidth(taLargeur);
    }
    J'espere que ca t'aidera.

  3. #3
    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
    fireTableDataChanged() n'est à utiliser qu'en cas de changement complet du modèle. Dans les autres cas il vaut mieux passer fireTableRowsInserted/Updated/Deleted suivant le type de MAJ qui a été effectuée. Ces dernières ne provoquent normalement pas la réinitialisation des tailles de colonnes.

  4. #4
    Membre expérimenté Avatar de Lethal
    Profil pro
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2006
    Messages : 194
    Par défaut
    Citation Envoyé par sinok Voir le message
    fireTableDataChanged() n'est à utiliser qu'en cas de changement complet du modèle.
    A quoi sert fireTableStructureChanged() alors ?

  5. #5
    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
    Quand la structure du modèle est changée (ajout de colonnes principalement)

  6. #6
    Membre expérimenté Avatar de Lethal
    Profil pro
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2006
    Messages : 194
    Par défaut
    Ben oui c'est ce que je fais.
    Quand une colonne est rajoutée je fais un structureChanged
    et quand une ligne est ajoutée, retirée ou une donnée changée je fais un dataChanged.

    Le problème est que j'ai un programme assez conséquent qui est presque terminé et que j'ai une méthode qui va dire a chaque JInternalFrame de rafraichir ses données. J'appelle donc fireTableDataChanged sur les JTable. Si je dois commencer a changer tous les appels de cette méthode, je ne vais pas m'en sortir avec l'architecture actuelle du programme.
    C'est pour ca que j'aurais simplement voulu pouvoir sauver la taille des colonnes.

Discussions similaires

  1. la taille des colonne jtable
    Par minooo dans le forum Composants
    Réponses: 3
    Dernier message: 14/12/2007, 15h06
  2. [Swing][JTable]Tailles des colonnes du tableau
    Par LordBlaize dans le forum Composants
    Réponses: 6
    Dernier message: 20/02/2006, 17h46
  3. régler la taille des colonnes d'un DBGrid
    Par nous2 dans le forum Bases de données
    Réponses: 6
    Dernier message: 01/10/2005, 16h35
  4. [JTable] Changer la taille des colonnes
    Par lilou77 dans le forum Composants
    Réponses: 2
    Dernier message: 20/09/2005, 10h26
  5. [JTable] redimensionner et changer le titre des colonnes
    Par Ghost Dog dans le forum Agents de placement/Fenêtres
    Réponses: 3
    Dernier message: 19/04/2005, 20h31

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