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 :

TableHeader horizontal [Trucs & Astuces]


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 3
    Par défaut TableHeader horizontal
    Bonsoir a tous,

    Je cherche a afficher des noms a mes lignes de ma JTable.

    Savez vous par quel moyen je peux les ajouter a ma JTable??

    Merci et bonne soirée.




    [Modéré par Didier]
    Ajout de tag dans le titre
    Lire les règles du forum : Règles du forum Java

  2. #2
    Membre éclairé
    Inscrit en
    Novembre 2002
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 51
    Par défaut
    Tu peux spécifier les noms des colones dans le constructeur de la JTable( Object[][] , Object[] )
    Ou alors tu peux redéfinir la méthode getColumnName(int) de la classe DefaultTableModel puis construire ta JTable a partir de ce modèle.

    Pour l'affichage, les noms de colones s'affcihent si tu a mis la JTable dans un JScrollPane. Sinon, tu ne veux pas faire de JScrollPane, tu peux récupérer le composant qui affcihe les noms des colones avec la méthode getTableHeader() de la classe JTable

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Février 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 119
    Par défaut
    Hello,

    Tu veux rajouter un header a la colonne ou a la ligne ?
    Si c'est pour la colonne, fait ce que dit sylvain114d sinon si c'est pour chaque ligne
    (Tiré d'un site que j'avais aspiré sur mon Disque Dur)
    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
     
     import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.table.*;
     
     
    /**
     * @version 1.0 11/09/98
     */
     
    class RowHeaderRenderer extends JLabel implements ListCellRenderer {
     
      RowHeaderRenderer(JTable table) {
        JTableHeader header = table.getTableHeader();
        setOpaque(true);
        setBorder(UIManager.getBorder("TableHeader.cellBorder"));
        setHorizontalAlignment(CENTER);
        setForeground(header.getForeground());
        setBackground(header.getBackground());
        setFont(header.getFont());
      }
     
      public Component getListCellRendererComponent( JList list, 
             Object value, int index, boolean isSelected, boolean cellHasFocus) {
        setText((value == null) ? "" : value.toString());
        return this;
      }
    }
     
    public class RowHeaderExample extends JFrame {
     
      public RowHeaderExample() {
        super( "Row Header Example" );
        setSize( 300, 150 );
     
        ListModel lm = new AbstractListModel() {
          String headers[] = {"a", "b", "c", "d", "e", "f", "g", "h", "i"};
          public int getSize() { return headers.length; }
          public Object getElementAt(int index) {
            return headers[index];
          }
        };
     
        DefaultTableModel dm = new DefaultTableModel(lm.getSize(),10);
        JTable table = new JTable( dm );
        table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
     
        JList rowHeader = new JList(lm);    
        rowHeader.setFixedCellWidth(50);
     
        rowHeader.setFixedCellHeight(table.getRowHeight()
                                   + table.getRowMargin());
    //                             + table.getIntercellSpacing().height);
        rowHeader.setCellRenderer(new RowHeaderRenderer(table));
     
        JScrollPane scroll = new JScrollPane( table );
        scroll.setRowHeaderView(rowHeader);
        getContentPane().add(scroll, BorderLayout.CENTER);
      }
     
      public static void main(String[] args) {
        RowHeaderExample frame = new RowHeaderExample();
        frame.addWindowListener( new WindowAdapter() {
          public void windowClosing( WindowEvent e ) {
    	System.exit(0);
          }
        });
        frame.setVisible(true);
      }
    }

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 3
    Par défaut MERCI BEAUCOUP
    C'était bien des en-têtes de lignes dont je parlais.

    Je te remercie pour ce code exemple.

    @+.

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

Discussions similaires

  1. [Listbox] ScrollBar Horizontal
    Par haleem dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 20/04/2005, 07h53
  2. [Visual St 2002 & CR ] table croisé-affichage horizontal
    Par sotiris dans le forum SAP Crystal Reports
    Réponses: 4
    Dernier message: 08/03/2005, 16h06
  3. prob menu horizontal
    Par tinkye_winkye dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 25/01/2005, 11h19
  4. [TP]Déplacement horizontal de l'écran
    Par Lucien dans le forum Turbo Pascal
    Réponses: 6
    Dernier message: 24/12/2004, 17h55
  5. scrolling vertical et horizontal
    Par myriam dans le forum MFC
    Réponses: 2
    Dernier message: 24/01/2003, 17h06

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