anbanb
Messages postés9Date d'inscriptionmardi 26 octobre 2004StatutMembreDernière intervention18 mai 2005
-
10 mai 2005 à 15:58
anbanb
Messages postés9Date d'inscriptionmardi 26 octobre 2004StatutMembreDernière intervention18 mai 2005
-
13 mai 2005 à 19:33
Bonjour a tous je suis en train de créer une jtable mais j ai quelques soucis au niveau de la methode setvalueat .
public int getColumnCount() {
return colonnes.size();
}
public int getRowCount() {
return donnees.size()/getColumnCount();
}
public String getColumnName(int columnIndex) {
String colName="";
if (columnIndex<=getColumnCount())
colName=(String)colonnes.elementAt(columnIndex);
return colName;
}
public Class getColumnClass(int columnIndex){
return String.class;
}
public boolean isCellEditable(int rowIndex, int columnIndex) {
return true;
}
public Object getValueAt(int rowIndex, int columnIndex) {
public void setValueAt(Object aValue, int rowIndex, int columnIndex) {
///////////////le probleme se situe ici
j ai mis ((Vector)donnees.elementAt(rowIndex)).setElementAt(aValue, columnIndex);
mais cela me crée des erreurs alors que mettre????
//////////////////////////////////
fireTableCellUpdated(rowIndex, columnIndex);
}
en vous remerciant d'avance
Voici ce que fait la partie en Gras :
La méthode elementAt(int) te renvoi un Objet que tu cast en Vector. Or d'après ce que tu dis donnée ne contient que des String. Sur cet objet casté en Vector tu applique la méthode setElementAt(Object, int).
1- pourquoi ca compile ?
Parceque ca pourrait etre bon si donnée était un vector contenant lui méme des Vectors eux mêmes contenant des String.
2- Pourquoi ca plante?
Parceque donnée ne contient pas des Vectors mais des Strings.
donc voici ce que tu dois mettre dans ta méthode ( ce que sensei01 te disais a peu près ;) )
Sensei01
Messages postés94Date d'inscriptionsamedi 22 février 2003StatutMembreDernière intervention27 juin 2006 11 mai 2005 à 12:36
Sensei01
slt,
c'est normal que ca ne marche pas, tu ne peux pas ecrire :
((Vector)donnees.elementAt(rowIndex)).setElementAt(aValue, columnIndex);
parce que elementAt(int) c pour recuperer un element
ex:
data = donnees.elementAt(5);
ton data est un element simple, genre un String, donc je vois pas trop comment tu peux lui appliquer un setElementAt
(a moins que ton donnees soit un tableau de tableau ????)
de plus, pour l'utilisation du setelementat, j'ecrirais (a vu d'oeil, faut vérifier) :
variable.setElementAt(6) = "coucou"; (par exemple)
anbanb
Messages postés9Date d'inscriptionmardi 26 octobre 2004StatutMembreDernière intervention18 mai 2005 11 mai 2005 à 22:43
deja merci d avoir repondu
pour preciser mes variables :
protected Vector donnees;
protected Vector colonnes ;
ensuite mon probleme est que je veux pouvoir actualiser les champs de ma jtable
donc je les ai rendu editable puis quand je modifie ces champs et que je vais sur une autre case j obtiens une erreur dans la console.je souhaite pouvoir modifier mes champs
et les recuperer dans un fichier texte mais apparement ma methode setvalueat coince...
Vous n’avez pas trouvé la réponse que vous recherchez ?