Witam.
Mam pewien problem z doborem odpowiednich komponentów do wyświetlenia dwu wymiarowej tablicy w swing-u, z delikatną różnicą miedzy interfejsem użytkownika a logika programu. Mianowicie mój program ma polegać na rozpoznawaniu liter używając do tego sieci Hopfielda. W tym celu chciał bym zbudować coś w stylu tabeli rozmiaru 7x5 w której to po naciśnięciu na dany jej element będzie zmieniać kolor z czarnego na biały bądź odwrotnie (domyślnie tabela jest cała biała) w ten sposób użytkownik będzie mógł narysować literę składającą się z czarnych pól tabeli. Natomiast po naciśnięciu odpowiedniego Jbutton-a zostaną te piksele sczytane do odpowiadającej jej tablicy która przechowywać będzie wartości powiedzmy 0 - gdy odpowiadający jej element posiadał białe tło, 1 - gdy czarne. W drugą stronę musi to działać identycznie gdyż tak naprawdę w interfejsie będą dwie identyczne tabelę gdzie w pierwszej rysujemy nieco zniekształconą literkę a w drugiej zostaje ona rozpoznana przez algorytm i w wyświetlona prawidłowo w tej drugiej, czyli sczytanej do interfejsu. Problem w tym że jest to moja pierwsza przygoda ze swing-em i nie wiem jaki komponent bądź komponenty wybrać. Myślałem o rozmieszeniu przez GridLayout 35 Jbutton-ów lecz po głębszej analizie pomysł odpada z dwóch powodów. Przy tworzeniu Jbutton-ów można co prawda było by podać kolejno liczy od 0 do 34 jako parametr aktualny konstruktora Jbutton (po stronie logicznej załatwiając to za pomocą jednowymiarowej tablicy) ale niestety nie wiem jak zmienić tam kolor tła i zrobić tak aby te liczby nie były wyświetlane w interfejsie (liczby podawane jako parametr aktualny konstruktora Jbutton jest chyba jedyna drogą aby wyłapać je poprzez zdarzenie kliknięcia myszą i łatwe przypisanie jego numeru do odpowiadającego go miejsca w tablicy). Przyznam że swoje gry dotychczas pisałem w JavaScript i tam nie miał bym z tym problemu Lecz to program na zaliczenie projektu do mojej szkoły i chciałem go zdać właśnie w Javie (jak z resztą poprzednie). Macie może jakieś propozycje jak to załatwić bo mi na razie nic nie przychodzi do głowy
pozdro