Witam,
Stosuję taki mechanizm działania:
- Pobieram z bazy danych parę nazwa i id rekordu w którym znajduje się nazwa (jest to więcej niż jeden rekord)
- Z tych par tworzę kolekcję ArrayList
- Nazwy wrzucam do JComboBox. Do box'a dodaję ActionListener
- Jeżeli użytkownik wybierze coś z JComboBox, sprawdzam w ArrayList id i pobieram dane z bazy.
Problem pojawia się w momencie gdy taka sama nazwa występuje więcej niż jeden raz. Pomyślałem, że wtedy zamiast pobierać nazwę z comboBox po zaznaczeniu przez użytkownika, użyję metody getSelectedIndex(), lecz tu pojawił się kolejny problem. Metoda zwraca index do pierwszego wystąpienia danej nazwy w comboBox, czyli gdy dane wyglądają tak:
Nazwa1
Nazwa2
Nazwa2
Nazwa3
to przy wybraniu przez użytkownika ostatniej 'Nazwa2" (czyli index=2), metoda getSelectedIndex() zwraca 1, czyli pierwsze wystąpienie 'Nazwa2'.
Czy ktoś z Was wie jak sobie poradzić z odczytem poprawnego wybranego index'u? Strasznie mi na tym zależy, ponieważ właśnie taki sposób wybierania danych najbardziej pasuje do mojego projektu... a to taki zonk :-[ Z góry dziękuję za wszelkie sugestie.