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 : modifier les noms des colonnes


Sujet :

Composants Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut Jtable : modifier les noms des colonnes
    Bonjour,

    j'ai une class JDBCAdapter hérité de la class AbstractTableModel qui me permet de me connecter à une base de donnée et de récuperer des infos de ma base via une requete sql, jusqu'a la tout va bien

    voila une méthode qui me permet d'afficher, tel table de tel base, l'ordre de tri etc

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    JDBCAdapter data=new JDBCAdapter("com.mysql.jdbc.Driver","jdbc:mysql://localhost/"+base,"root","");
     
    tab_List=new JTable();
     
    s="SELECT * FROM " + table +" ORDER BY " + order + " LIMIT " + lim_basse + "," +nb_records;
     
    data.executeQuery(s);
     
    tab_List.setModel(data);
    ce que je veux faire c'est modifier le nom des colonnes, par défaut il me met ceux des colonnes de ma table

    est-ce qu'il faut que j'intervienne au niveau de ma class JDBCAdapter ou au niveau de ma JTable ?

    d'avance merci

  2. #2
    Membre averti Avatar de xixi31
    Inscrit en
    Juin 2005
    Messages
    423
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Juin 2005
    Messages : 423
    Points : 414
    Points
    414
    Par défaut
    il y a un post récent qui traite de ca :

    http://www.developpez.net/forums/sho...d.php?t=256524
    auteur de Awl (http://awl-wizard.sourceforge.net), librairie de développement d'assistant en Java.
    auteur de Blackdog (http://www.blackdog-project.org), lecteur/gestionnaire audio en Java.

  3. #3
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut
    j'ai consulté ce topic avant d'écrire le mien et malheursement ca n'a pas résolu mon probleme

  4. #4
    Rédacteur
    Avatar de eclesia
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    2 108
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 108
    Points : 3 203
    Points
    3 203
    Par défaut
    en sql tu peux utiliser un alias.

    select ddn as date_de_naissance from ........
    Systèmes d'Informations Géographiques
    - Projets : Unlicense.science - Apache.SIS

    Pour un monde sans BigBrother IxQuick ni censure RSF et Les moutons

  5. #5
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut
    c'était la 1ere solution quand je n'avais qu'une seul table, la j'en ai plusieurs

  6. #6
    Rédacteur
    Avatar de eclesia
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    2 108
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 108
    Points : 3 203
    Points
    3 203
    Par défaut
    Cadeau :
    extrait de ma librairie

    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
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
     
    package jsl.table;
     
    import java.util.ArrayList;
     
    import javax.swing.table.AbstractTableModel;
     
    public class SimpleTableModel extends AbstractTableModel{
     
    private static final long serialVersionUID = 1;
    private String[] columnNames = {};
    private Class[] columnClass = {};
    private ArrayList<ArrayList<Object>> data = new ArrayList<ArrayList<Object>>();
     
     
    	public SimpleTableModel(){
    		super();
    		}
     
        public SimpleTableModel( ArrayList<ArrayList<Object>> dat, String[] cols, Class[] clas){
        	super();
        	update(dat,cols,clas);
        	}
     
        public void setClasses(Class[] cla){
        	columnClass = cla;
        	}
     
        public void empty(){
        	columnNames = new String[0];
    		data = new ArrayList<ArrayList<Object>>();
     
    		fireTableStructureChanged();
        	}
     
        public void update( ArrayList<ArrayList<Object>> dat, String[] cols, Class[] clas){
        	columnClass = clas;
        	columnNames = cols;    	    	
        	data = dat;
     
        	fireTableStructureChanged();
        	}
     
        public int getColumnCount() {
            return columnNames.length;
        	}
     
        public int getRowCount() {
            return data.size();
        	}
     
        /** use with care, only to change column names */
        public void setColumn(String[] column){
        	columnNames = column;
        	}
     
        public String getColumnName(int col) {
            return columnNames[col];
        	}
     
        public Object getValueAt(int row, int col) { 
        	ArrayList<Object> al = data.get(row);
            return al.get(col);
        	}
     
        public Class<?> getColumnClass(int c) {
            return columnClass[c];
        	}
     
        public boolean isCellEditable(int row, int col) {
        	return false;
        	}
     
        public void setValueAt(Object value, int row, int col) {
        	ArrayList<Object> al = data.get(row);
        	al.set(col, value);
        	data.set(row, al);
            fireTableCellUpdated(row, col);
        	}
     
    }
    Systèmes d'Informations Géographiques
    - Projets : Unlicense.science - Apache.SIS

    Pour un monde sans BigBrother IxQuick ni censure RSF et Les moutons

  7. #7
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut
    it works, merci eclesia

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

Discussions similaires

  1. Changer les noms des colonnes de JTable
    Par lamis2009 dans le forum Composants
    Réponses: 1
    Dernier message: 16/06/2009, 16h19
  2. Les noms des colonnes du JTable ne s'affichent pas
    Par altaro dans le forum Composants
    Réponses: 1
    Dernier message: 15/05/2009, 09h08
  3. [JTable] les noms des colonnes de s'affichent pas
    Par macben dans le forum Composants
    Réponses: 6
    Dernier message: 25/04/2008, 11h03
  4. Réponses: 11
    Dernier message: 01/04/2008, 18h36
  5. [JTABLE] Comment changer les noms des colonnes?
    Par uzumaki_naruto dans le forum Composants
    Réponses: 2
    Dernier message: 31/03/2007, 21h57

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