[JTABLE][CHECKBOX] modifier la valeur de la case à cocher
Bonjour,
j'ai une JTABLE dont chaque ligne contient une checkbox.
chaque ligne est construite grace à des données issues d'une requete.
je construit donc la table à partir des données.
Mais j'ai un pb pour la checkbox.
je n'arrive pas a mettre coché ou non en fonction de ce que je récupère dans la requete.
par défaut la case apparait décoché...
comment puis-je faire? quelle est la méthode?
merci
Code:
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
| /**
* permet de contruire une feuille du classeur pour un mois
* @param mois
* @param annee
* @param compte
* @param tableauPanel
* @return void
*/
public void construireMois(int mois,int annee, Compte compte, Tableau tableauPanel)
{
//initialisation des donnees des mois du tableau
Vector vMois = new Vector();
LigneCompteCtrl lcc = new LigneCompteCtrl();
vMois = lcc.getLignes(annee,mois,compte.getNumeroCompte(),compte.getNomCompte());
MaTableModel modelModif= (MaTableModel) tableauPanel.getTable().getModel();
//vider les anciens JTable
while (modelModif.getRowCount()!=0)
{
modelModif.removeRow(0);
}
int j = 0;
while (j < vMois.size())
{
Vector vMoisReel = new Vector();
LigneCompte lc = new LigneCompte();
lc = (LigneCompte)(vMois.elementAt(j));
String dateMois = lc.getDateLigne().toString();
String debitMois = "";
String creditMois = "";
if (lc.getSens()=='D')
debitMois = "-"+Double.toString(lc.getValeur());
else
creditMois = "+"+Double.toString(lc.getValeur());
String soldeMois = Double.toString(lc.getSoldeCourant());
String intituleMois = lc.getIntitule();
vMoisReel.addElement(dateMois);
vMoisReel.addElement(debitMois);
vMoisReel.addElement(creditMois);
vMoisReel.addElement(soldeMois);
vMoisReel.addElement(intituleMois);
modelModif.addRow(vMoisReel);
//pour la case à cocher
if (lc.getValide()==true)
{
//on coche, la validation a été faite
//
// METTRE COCHE OU PAS
}
j++;
}
//pour le bouton supprimer dans les lignes
ButtonRenderer br = new ButtonRenderer();
br.setCompteClasseur(this);
br.setMois(mois);
br.setExercice(annee);
br.setTypeBouton("BoutonSupprimer");
JCheckBox cb = new JCheckBox();
ButtonEditor be = new ButtonEditor(cb);
tableauPanel.getTable().getColumn("S").setCellRenderer(br);
tableauPanel.getTable().getColumn("S").setCellEditor(be);
//pour le bouton modifier dans les lignes
ButtonRenderer brM = new ButtonRenderer();
brM.setCompteClasseur(this);
brM.setMois(mois);
brM.setExercice(annee);
brM.setTypeBouton("BoutonModifier");
JCheckBox cbM = new JCheckBox();
ButtonEditor beM = new ButtonEditor(cbM);
tableauPanel.getTable().getColumn("M").setCellRenderer(brM);
tableauPanel.getTable().getColumn("M").setCellEditor(beM);
//pour avoir un ligne vide a la fin
ajouteLigneVierge(modelModif);
tableauPanel.getTable().getModel().addTableModelListener(modelModif);
} |