begin process at 2012 02 13 04:13:25
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Java

 > 

Archives

 > 

Au secours

 > 

help Jtable et colonne


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

help Jtable et colonne

jeudi 26 mai 2005 à 01:27:19 | help Jtable et colonne

badreov

 salut ,

comment je peux avoir un colonne noneditabele,
c.a.d quand je double clic sur une celule de se colone je ne peux pas le modifier.

merci svp explique moi avec un exemple

tchaoi

jeudi 26 mai 2005 à 06:38:32 | Re : help Jtable et colonne

GodConan

tu cree ton model de donnee en surchargeant la methode isEditable( row, col )
dans cette methode tu gere si la colonne est editable ou non tu renvoi true ou false...


GL

++

GodConan
jeudi 26 mai 2005 à 10:55:00 | Re : help Jtable et colonne

badreov

oui
mais est ce qui tu peus donne plus  de detaill
etcomment je peut stoper l'edition des colonnes ou le contraire 
et comment appeler la methode isEditable


 merci

voila mon model tu peut le modifier
 ///////////////////////////////////////////////////////////////////////////////////////
package applicationgcnote;
import java.io.*;
import java.awt.*;
import javax.swing.event.*;
import javax.swing.*;
import javax.swing.table.*;

public class ModelTableau extends JPanel implements  Serializable,TableModelListener {
  String[] colonne={"Code","Nom","Prenom","Age","Adresse",
                    "1","2","3","4","Moyenne","Mention",""};
  String[][] ligne;
  DefaultTableModel model=new DefaultTableModel();
  JTable table;
  BorderLayout borderLayout1 = new BorderLayout();
  CardLayout cardLayout1 = new CardLayout();

  public ModelTableau() {
    ligne=new String[0][colonne.length];
    table=new JTable(ligne,colonne);

     JScrollPane jsp = new JScrollPane(table);
    jsp.getViewport().add("bbbbbb",table);
    add("ddddd",jsp);
    try {
      jbInit();
    }
    catch(Exception e) {
      e.printStackTrace();
    }
  }
  public ModelTableau(String m1,String m2,String m3,String m4) {
    colonne[5]=m1;
    colonne[6]=m2;
    colonne[7]=m3;
    colonne[8]=m4;
   ligne=new String[0][colonne.length];
  model=new DefaultTableModel(ligne,colonne);
  model.isCellEditable(0,3);
   table=new JTable(model);
   model.addTableModelListener(this);
    JScrollPane jsp = new JScrollPane(table);
   jsp.getViewport().add("bbbbbb",table);
   add("ddddd",jsp);
   try {
     jbInit();
   }
   catch(Exception e) {
     e.printStackTrace();
   }
 }
void ajoutling(Etudiant et){
  String[] x={et.getcode()+"",et.getnom(),et.getprenom(),et.getage()+"",et.getadr(),
                    "","","","","","",""};
  model.addRow(x);
  table.setModel(model);
}
void supprimerligne(){
  model.removeRow(table.getSelectedRow());
}

public void tableChanged(TableModelEvent e)
     { if (e.getType() != TableModelEvent.UPDATE) return;
       int ligne = e.getFirstRow();
        int colonne = e.getColumn();
        float  somme = 0;
        String chaine;
 
        if ((colonne > 4) && (colonne <9))
          {
            for (int i = 4; i < 9; i++)
              {
                try
                  {
                    chaine = (String)model.getValueAt(ligne, i);
                    if(Float.valueOf(chaine.trim()).floatValue()<0||Float.valueOf(chaine.trim()).floatValue()>20){
                      model.setValueAt("", ligne, colonne);
 
                     chaine="0";
                      JOptionPane.showMessageDialog(null,"la note ne doit pas etre <0 ou >20","erreur",1);
                    }
                    if (!chaine.equals(null))
                    {
                      somme +=  Float.valueOf(chaine.trim()).floatValue();
 
                    }
                  }
                catch(NumberFormatException exc) {}
              }
            if (somme > 0){
              float s=somme / 4 ;
              model.setValueAt(s+ "", ligne, 9);
              if(s>=16){
              model.setValueAt("tre bien", ligne, 10); 
              }
              else if(s>=14){
               model.setValueAt("bien", ligne, 10);
              }
              else if(s>=12){
                model.setValueAt("montion", ligne, 10);
              }
              else if(s>=10){
                model.setValueAt( "moyene", ligne, 10);
              }
              else if(s>=8){
                model.setValueAt("faible", ligne, 10);
              }
              else{
                model.setValueAt("tre faible", ligne, 10);
              }
            }
            else model.setValueAt("0", ligne, 9);
          }
 
     }

boolean isEditable(int row,int col ){
  return false;
}
      
 private void jbInit() throws Exception {
    this.setLayout(cardLayout1);
  }

}

jeudi 26 mai 2005 à 18:27:08 | Re : help Jtable et colonne

GodConan

iseditable ce n est pas toi qui l appelle toi tu la surcharge ds un defaulttablemodel par exemple
et ensuite c est le comportement de JTable qui s en occupe ...



GodConan
jeudi 26 mai 2005 à 23:44:57 | Re : help Jtable et colonne

badreov

j'ai pas bien compri !!!!!!!!!!!!
 comment je peut surcharger cette method

Svp  explique toi

merci



Cette discussion est classée dans : help, colonne, jtable


Répondre à ce message

Sujets en rapport avec ce message

sos jtable [ par chaton6 ] je cherche désespérement coment faire pour :- Les données de mon tableau s'affiche dans une JTable. J'aimerais savoir comment faire pour faire une sai Ranger une JTable ou un DefaultTableModel [ par RustyNail ] Existe-t-il un moyen de ranger une JTable ou un DefaultTableModel par l'ordre d'une colonne, par exemple une colonne nom, et on trierait les lignes po cacher colonne d une jtable [ par benohite ] bonjour,je represente une base de donnees au moyen d une jtable j aimerais cache dans la jtable certaine de ces colonnes mais les garder dans le model Taille de colonne dans une JTable [ par zauz ] Hello,Je cherche à modifier la taille minimum d'une colonne dans une JTable. Mais à l'écran, aucun changement . La valeur par défaut doit rester à 15. mettre le nom d'une colonne d'une Jtable sur 2 lignes!! [ par kaliel ] salutje voudrais savoir comment faire pour afficher le nom d'une colonne d'une Jtable sur 2 ou plusieurs lignes au lieu des trois petits points?merci JTable et Taille de colonne [ par redisdead2 ] Help !J'ai une JTable où j'ai redefinit le rendu en collant un JLabel dans chaque Cellule. jusque là pas de pb. Ce que j'aimerai et que je n'arrive pa JTableHeader [ par jc_romeo ] BonjourJe voudrais savoir comment faire pour changer le nom d'une colonne d'un JTable (soit modifier la JTableHeader).Je n'ai pas vu de set_...(String Justifier à droite 1 colonne d'une jTable [ par asetti ] slt,Il faut que je justifie à droite le contenu de la 3eme colonne de ma jTable mais pas les autres colonnes.quelqu'un connait il la fonction qui le p Format date dans une colonne de JTable [ par phmath ] Comment imposer un format de date style"dd/MM/yyyy hh:mm:ss" dans une colonne d'une JTable?? pas de doublon dans une colonne de jtable [ par Zoupine ] Bonjour,J'ai une JTABLE construite avec deux Vector.Une de mes colonnes est éditable avec un jCombobox.Le contenu de mon combo : 1 2


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,421 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales