|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Feb 2014
Città: Bergamo
Messaggi: 644
|
[JAVA] Aiutatemi sul Listener
Codice:
tblCalendar.setCellSelectionEnabled(true);
ListSelectionModel cellSelectionModel = tblCalendar.getSelectionModel();
cellSelectionModel.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
cellSelectionModel.addListSelectionListener(new ListSelectionListener() {
public void valueChanged(ListSelectionEvent e) {
Integer selectedData = 0;
int[] selectedRow = tblCalendar.getSelectedRows();
int[] selectedColumns = tblCalendar.getSelectedColumns();
for (int i = 0; i < selectedRow.length; i++) {
for (int j = 0; j < selectedColumns.length; j++) {
System.out.println("for"+selectedData+" "+selectedColumns.length);
selectedData = (Integer) tblCalendar.getValueAt(selectedRow[i], selectedColumns[j]);
}
System.out.println("ciao"+selectedData);
}
}
});
__________________
trattative concluse con : ipertotix, lele2004,Jeremy01,geminiII,antoniox,offdexter87,spedito83,francisco9751,Danny1 |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Jul 2005
Città: Vicenza
Messaggi: 1570
|
Quote:
Giusto per fare un pò di debug a monte e capire meglio la situazione. |
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Feb 2014
Città: Bergamo
Messaggi: 644
|
6 volte
__________________
trattative concluse con : ipertotix, lele2004,Jeremy01,geminiII,antoniox,offdexter87,spedito83,francisco9751,Danny1 |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jun 2014
Messaggi: 3753
|
è per caso un pezzo di codice di una classe controller di una pagina JSF?
__________________
MSI MAG Mortar Wi-Fi B650M - Ryzen 7600 - ThermalRight Peerless Assassin 120SE - RTX 3090 FE - G.Skill 64Gb DDR5-6000 CL30 - Antec HCP Platinum 850w - CM Qube 500 Macaron Edition |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jan 2014
Messaggi: 852
|
Se sostituisci l'intera chiamata a addListSelectionListener con un semplice println, quante volte ti viene stampato?
|
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Feb 2014
Città: Bergamo
Messaggi: 644
|
Quote:
sempre 6 volte
__________________
trattative concluse con : ipertotix, lele2004,Jeremy01,geminiII,antoniox,offdexter87,spedito83,francisco9751,Danny1 |
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Jan 2014
Messaggi: 852
|
A questo punto mi sembra evidente: hai aggiunto 6 listener, quando si verifica l'evento vengono invocati tutti e 6.
|
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Feb 2014
Città: Bergamo
Messaggi: 644
|
Sbagliato ho solo un listener solo che mi viene richiamato 6 volte
__________________
trattative concluse con : ipertotix, lele2004,Jeremy01,geminiII,antoniox,offdexter87,spedito83,francisco9751,Danny1 |
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Jan 2014
Messaggi: 852
|
Se hai sostituito questo blocco di codice
Codice:
cellSelectionModel.addListSelectionListener(new ListSelectionListener() {
public void valueChanged(ListSelectionEvent e) {
Integer selectedData = 0;
int[] selectedRow = tblCalendar.getSelectedRows();
int[] selectedColumns = tblCalendar.getSelectedColumns();
for (int i = 0; i < selectedRow.length; i++) {
for (int j = 0; j < selectedColumns.length; j++) {
System.out.println("for"+selectedData+" "+selectedColumns.length);
selectedData = (Integer) tblCalendar.getValueAt(selectedRow[i], selectedColumns[j]);
}
System.out.println("ciao"+selectedData);
}
}
});
|
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Feb 2014
Città: Bergamo
Messaggi: 644
|
quindi devo usare un set?
__________________
trattative concluse con : ipertotix, lele2004,Jeremy01,geminiII,antoniox,offdexter87,spedito83,francisco9751,Danny1 |
|
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Vicenza
Messaggi: 1570
|
|
|
|
|
|
|
#12 |
|
Senior Member
Iscritto dal: Jan 2014
Messaggi: 852
|
Dicevo per dire, non so se quella classe abbia un metodo setListSelectionListener, la soluzione corretta sarebbe quella di aggiungere un solo listener come già detto da [Kendall]. Un workaround potrebbe essere quello di rimuovere tutti i listener prima di aggiungere il nuovo, ma è un metodo fortemente sconsigliato.
PS. guarda sempre il javadoc per sapere di quali metodi dispone una classe e cosa fanno esattamente. Ultima modifica di Daniels118 : 25-02-2015 alle 08:43. |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 14:39.




















