Można przełączyć na używanie GUI design pattern. Lub skonstruuj ograniczoną implementację.
utworzyć interfejs GUI formularz, który ma DrawXArrayList metodą (z X jedne meaningfull nazwa Ma parametry typu ArrayList
utworzyć nową klasę o nazwie GUIView Posiada co najmniej dwie metody:.. UpdateXArrayList i RegisterForm
Podczas inicjalizacji aplikacji mają GUI Formularz zarejestrować się z klasą realizacji GUIView. Bądź klasę wykonawczą GUIView widoczne na formularzu.
Kiedy coś w formularzu GUI aktualizuje ArrayList mieć go nazwać UpdateXArrayList jako ostatnia rzecz, jaką robi Metoda UpdateXArrayList w klasie implementującej GUIView następnie wywoła DrawXArrayList przekazując zaktualizowaną listę tablic. DrawXArrayList w klasie formularzy implementującej interfejs GUIFormInterface podejmie kroki, aby zaktualizować kontrolkę wyświetlającą ArrayList.
Chociaż wydaje się, że jest to dużo kroków w porównaniu do konfiguracji obserwatora i słuchacza.Masz większą kontrolę nad tym, jak różne działania użytkownika wpływają na interfejs użytkownika, a następnie na schemat obserwatora-słuchacza. Ponadto udokumentowałeś w kodzie interakcję między działaniem użytkownika a aktualizacjami interfejsu użytkownika.
Czy odnosząc się do JComboBox? Jeśli tak, to zajrzę do ComboBoxModel i jego implementacji. – Avrom