Bonjour à tous,
Je suis en train de faire un tableau de comptabilité.
J'ai un champs de date extérieur à la JTable nommé "date_de_pointage".
Dès que je change la date sur ce champs, je voudrais mettre a jour la table.
Voilà ce que j'ai écris:
Je souhaite que dès qu'on clique sur le bouton nommée Pointage dans la colonne "Pointage", cela me met la nouvelle date de pointage a jour.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 date_de_pointage.addPropertyChangeListener(new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent e) { table.getColumn("Pointage").setCellEditor(new ButtonEditor("pointage_compta", new JCheckBox(), date_de_pointage.getDate()));//Lorsqu'on clique sur le bouton } });
Classe ButtonEditor:
Sur le principe ça marche!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 if(this.button.getText()=="Pointage"){ ((AbstractTableModel)table.getModel()).setValueAt(date_pointage.getDateAvecSlash(), this.row, (this.column +1)); //On affecte la date dans la bdd compta_banqueDao.update("check", "1", "check_mois", date_pointage.getDateTime2(), (Integer) table_model.getValueAt(row, 0, 1)); logger.info("Mise a jour de compta_banque, on affecte la date de pointage"); this.button.setText("Dépointage"); }
Si je pointe en cliquant sur le bouton-> la date de pointage se remplit dans la colonne suivante.
Si je change la date, et que je pointe a nouveau la même cellule. Il me remet la date de pointage précédent.-->Erreur que je cherche a corriger
Par contre, si entre temps je clique sur une autre cellule, il me change bien la date de pointage.
En gros le fait de cliquer sur une autre cellule me valide ma nouvelle date.
Ma question comment faire valider la JTable.
J'ai essayé :
Sans succès.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 table.repaint(); table.revalidate(); table.updateUI(); table.validate();
Partager