mercurio76
18-10-2003, 10:27
Sto cercando di riempire la lista di elementi di una JComboBox ma ho un problema.
Dunque, gli elementi non sono semplici stringhe ma oggetti composti da due campi e tre metodi: una stringa e un intero, i metod setItem, getItemKey e toString. Io vorrei inserire questi oggetti semplicemente facendo "nomeCombo.insertItemAt(item,posizione)" e che il risultato fosse la visualizzazione del solo campo String. Per fare questo ho quindi creato un metodo toString che mi restituisce il campo String dell'oggetto.
In questo modo inserisco gli oggetti e viene correttamente visualizzato nella lista solo il campo String ma se seleziono poi un oggetto dalla lista posso recuperare anche il campo intero.
Il problema è questo..sembra funzionare tutto a dovere ma quando avviene l'inserimento (con un ciclo while) nella lista dalla JCombo compare solo l'ultimo oggetto inserito ma in tutte le posizioni..lo stralcio del codice è questo:
int i=0;
while (result.next()){
....
....
item.setItem(stringa,key);
comboDatiLocalita.insertItemAt(item,i++)
}
Qualcuno mi sa aiutare?
Dunque, gli elementi non sono semplici stringhe ma oggetti composti da due campi e tre metodi: una stringa e un intero, i metod setItem, getItemKey e toString. Io vorrei inserire questi oggetti semplicemente facendo "nomeCombo.insertItemAt(item,posizione)" e che il risultato fosse la visualizzazione del solo campo String. Per fare questo ho quindi creato un metodo toString che mi restituisce il campo String dell'oggetto.
In questo modo inserisco gli oggetti e viene correttamente visualizzato nella lista solo il campo String ma se seleziono poi un oggetto dalla lista posso recuperare anche il campo intero.
Il problema è questo..sembra funzionare tutto a dovere ma quando avviene l'inserimento (con un ciclo while) nella lista dalla JCombo compare solo l'ultimo oggetto inserito ma in tutte le posizioni..lo stralcio del codice è questo:
int i=0;
while (result.next()){
....
....
item.setItem(stringa,key);
comboDatiLocalita.insertItemAt(item,i++)
}
Qualcuno mi sa aiutare?