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 :

[debutant] [JTable] ajout d'une ligne


Sujet :

Composants Java

  1. #1
    Membre du Club
    Inscrit en
    Mai 2005
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 75
    Points : 53
    Points
    53
    Par défaut [debutant] [JTable] ajout d'une ligne
    salut voila j'ai une appli qui va lire dans un fichier et stocker toutes le donnees dans un JTable, qui dans son model de base ne contient que ses entetes.

    Mon fichier se lit à l'aide d'une boucle for et je voudrais ajouter une ligne à chaque passe dans ma boucle mais je ne sait pas comment faire

    j'ai regarder dans l'api java et les post du forum c pas tres explicite

    voila mon code :
    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
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
     
        private String [] columnNames={"N°","Date de Debut","Heure de Debut","Libellé de l'évènement","Duree"}; 
     
        private DefaultTableModel tableModel=new DefaultTableModel((String[])columnNames,0)
        {                    
            public boolean isCellEditable(int row, int col) // edition de la colonne possible ou pas
            { 
                 if(col == 0)
                 {                
                    return false;  
                 }           
                 else 
                    return true; 
            }
        };      
     
        private DefaultTableCellRenderer tr = new DefaultTableCellRenderer()
        {        
          public Component getTableCellRendererComponent(JTable table,Object value, boolean isSelected, boolean hasFocus, int row, int column) 
          {
              setHorizontalAlignment(JLabel.CENTER); 
              setFont(new Font("Verdana",Font.PLAIN,12));
     
              if (value != null && value instanceof String)   
                 setText((String)value); 
              else 
                 setText(null); 
     
                try{                                    
                   if (isSelected) { 
     
                       setBackground(Color.lightGray);               
                   }              
                   else 
                   { 
                       setBackground(Color.WHITE); 
                   } 
               } catch (ClassCastException ex){} 
               return this;
            }
        };
     
        private JTable tab_playlist =new JTable(tableModel);
     
        private String[] evt = {"Code Moralite","FingerPrinting","Crypté", "Fermeture"};
     
        /** Creates a new instance of New_Playlist */
        public New_Playlist(Dimension taille,JFrame parent) 
        {
            super("TF6 HOR",true,true,true,true);   
            this.parent=parent;
            Init(taille);        
        }
        public void Init(Dimension taille)
        {   
            this.setPreferredSize(taille);          
            this.setBorder(BorderFactory.createEtchedBorder());
     
            panel_entete.setBorder(BorderFactory.createEtchedBorder());        
     
            lb_bouquet.setText("CANALSAT HORIZON");
            panel_bouquet.add(lb_bouquet);
            panel_bouquet.setBorder(BorderFactory.createEtchedBorder());
     
            lb_service.setText("TF6 HOR - SID : 8031");
            panel_service.add(lb_service);
            panel_service.setBorder(BorderFactory.createEtchedBorder());                                          
     
            tab_playlist.setBorder(BorderFactory.createEtchedBorder());           
            tab_playlist.setAutoResizeMode(tab_playlist.AUTO_RESIZE_SUBSEQUENT_COLUMNS);
     
            tab_playlist.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION);
     
            tab_playlist.getColumnModel().getColumn(0).setMinWidth(this.getPreferredSize().width/25);
            tab_playlist.getColumnModel().getColumn(0).setMaxWidth(this.getPreferredSize().width/25);
            tab_playlist.getColumnModel().getColumn(0).setPreferredWidth(this.getPreferredSize().width/25); 
     
            tab_playlist.getColumnModel().getColumn(1).setMinWidth(this.getPreferredSize().width/8);
            tab_playlist.getColumnModel().getColumn(1).setMaxWidth(this.getPreferredSize().width/8);
            tab_playlist.getColumnModel().getColumn(1).setPreferredWidth(this.getPreferredSize().width/8);
     
            tab_playlist.getColumnModel().getColumn(2).setMinWidth(this.getPreferredSize().width/8);
            tab_playlist.getColumnModel().getColumn(2).setMaxWidth(this.getPreferredSize().width/8);
            tab_playlist.getColumnModel().getColumn(2).setPreferredWidth(this.getPreferredSize().width/8); 
     
            tab_playlist.getColumnModel().getColumn(3).setMinWidth(49*this.getPreferredSize().width/100);
            tab_playlist.getColumnModel().getColumn(3).setMaxWidth(49*this.getPreferredSize().width/100);
            tab_playlist.getColumnModel().getColumn(3).setPreferredWidth(49*this.getPreferredSize().width/100);
     
            tab_playlist.getColumnModel().getColumn(4).setMinWidth(this.getPreferredSize().width/5);
            tab_playlist.getColumnModel().getColumn(4).setMaxWidth(this.getPreferredSize().width/5);
            tab_playlist.getColumnModel().getColumn(4).setPreferredWidth(this.getPreferredSize().width/5);         
     
            tab_playlist.setGridColor(Color.BLACK);           
     
            tab_playlist.setRowHeight(30);
     
            tab_playlist.getTableHeader().setFont(new Font("Times New Roman",Font.BOLD,12));
            tab_playlist.getTableHeader().setPreferredSize(new Dimension(100,20));                
     
            scrollPane.getViewport().setView(tab_playlist);        
     
            tr.setOpaque(true);       
            tab_playlist.setDefaultRenderer(java.lang.Object.class,tr);                
     
            panel_entete.add(panel_bouquet,BorderLayout.WEST);
            panel_entete.add(panel_service,BorderLayout.CENTER);                                
     
            this.getContentPane().add(panel_entete,BorderLayout.NORTH);
            this.getContentPane().add(scrollPane,BorderLayout.CENTER);              
        }               
     
     
        public void remplir (File chemin)
        {
            System.out.println(chemin);
     
            int taille_fichier,i;
            byte[] contenu_fichier;
            String val=new String();                          
     
            try
            {
                 FileInputStream fichier= new FileInputStream (chemin);
                 taille_fichier=fichier.available(); // on recupere la taille du fichier
                 contenu_fichier=new byte[taille_fichier]; // creation d'un tableau
     
                 for (i=0;i<taille_fichier;i++)
                 {
                     contenu_fichier[i]= (byte)fichier.read();  // rempli le tableau avec le contenu du fichier
                     val=toHexString(contenu_fichier);  // converti le contenu du fichier en hexa  
                 }                                                
                 fichier.close();                                                                                         
             }                             
             catch (FileNotFoundException e1)
             {
                 System.out.println("Exception : "+e1);
             }
             catch(IOException e2)
             {
                 System.out.println("Exception : "+e2);
             }
     
            syntaxe_tlv syntaxe = new syntaxe_tlv();       
            element elt_racine = new element("racine",null);                       
            syntaxe.decode(val, elt_racine);
     
            Extraction extract=new Extraction();
            Playlist_Evt playlist = new Playlist_Evt();
            playlist=extract.Extract(elt_racine);
            Elementary_Evt evt = new Elementary_Evt();
     
            evt=(Elementary_Evt)playlist.arbre.elementAt(1);   
     
            System.out.println(playlist.arbre.size());
            for(i=0;i<playlist.arbre.size()-2;i++)
            {
                // ajouter une ligne
            }
       }
     
    public static final String toHexString(byte[] bytes) 
        {
    	StringBuffer sb = new StringBuffer();
    	int i;
     
    	for (i=0; i < bytes.length; i++) {
    	    sb.append(HexChars[(bytes[i]>>4) & 0xf]);
    	    sb.append(HexChars[bytes[i] & 0xf]);           
    	}
     
    	return new String(sb);
        }
    }
    Merci de Votre aide

  2. #2
    Membre du Club
    Inscrit en
    Mai 2005
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 75
    Points : 53
    Points
    53
    Par défaut
    c bon j'ai trouver il suffisait de mettre à jour le model

    a savoir dans la boucle for

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Object [] nouv_ligne = null; 
                tableModel.addRow(nouv_ligne);
    merci quand meme j'aurai surement d'autre question

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

Discussions similaires

  1. Trier une Jtable apres ajout d'une ligne
    Par cisnake dans le forum Composants
    Réponses: 0
    Dernier message: 12/05/2011, 18h10
  2. Réponses: 3
    Dernier message: 28/10/2010, 10h58
  3. Réponses: 3
    Dernier message: 21/05/2010, 10h17
  4. Ajout d'une ligne dans une JTable
    Par d_hazem dans le forum Composants
    Réponses: 3
    Dernier message: 22/09/2008, 10h56
  5. [Debutant][JTable] Suppression d'une ligne
    Par seiryujay dans le forum Composants
    Réponses: 7
    Dernier message: 03/08/2005, 17h15

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