Salut à tous,
Ma JTable est en fait un log de mon application, et donc il faut que les infos soit du plus récent au plus vieux.
Hors ça fonctionne une fois sur deux pour le premier bouton est 0 fois pour le deuxième, sachant qu'ils font appel à la même méthode et de la même façon.
La méthode addLog :
☼ Comme vous l'avez compris le but est que ça fonctionne quelque soit le nombre de fois que j’appelle la méthode.
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 public void addLog(String message, infoMessage info) { JTable log = IhmConverter.getInstance().getTblLog(); DefaultTableModel model = (DefaultTableModel) log.getModel(); TableCellRenderer renderer = new CustomTableCellRenderer(); SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date toDay = new Date(); if (info.equals(infoMessage.info)) { String val = dateFormat.format(toDay) +" - INFO : "+ message; model.addRow(new Object[]{val}); model.fireTableDataChanged(); } else if (info.equals(infoMessage.warning)) { String val = dateFormat.format(toDay) +" - WARNING : "+ message; model.addRow(new Object[]{val}); model.fireTableDataChanged(); } else if (info.equals(infoMessage.error)) { String val = dateFormat.format(toDay) +" - ERROR : "+ message; model.addRow(new Object[]{val}); model.fireTableDataChanged(); } ((TableRowSorter<?>) log.getRowSorter()).toggleSortOrder(0); //0 = the first column log.repaint(); log.setDefaultRenderer(String.class, renderer); }
Merci d'avance
Partager