No dobra to jak to zrobić aby było dobrze.
Problem polega na tym, że w trakcie działania programu będą odpalane okienka, do których ma być przekierowywana wiadomość przychodząca z wątku obsługującego połączenia przychodzące.
Wymyśliłem sobie, że podczas odpalania takiego nowego okienka tworzę obiekt i zapisuję go w arraylist. Następnie gdy zaistnieje potrzeba przesłania informacji do tego okienka stworzę obiekt na podstawie informacji z arraylist i dopiszę coś do pola jTextPane. Być może da się to zrealizować inaczej... niestety moja obecna wiedza nie pozwala mi wykombinować innego rozwiązania....
Podsumowując mam wątki, które nasłuchują przychodzące wiadomości i jeżeli jakaś przyjdzie jest wyświetlana w oknie głównym w jTextPane. Tak więc wszystkie wiadomości przychodzące od klientów pokazywane są razem. Chcę zrobić aby po kliknięciu na liscie podłączonych klientów otwierało sie okienko do rozmowy tylko między mną a klientem w którego kliknę 2x.
Stworzyłem więc klasę która odpowiada za takie okienko oraz arrayList gdzie zapisuję obiekt okienka gdy zostanie ono zainicjalizowane. Dalej zaczynają się problemy...
i co nikt nie pomoże?
Tak myślę czy nie lepiej by było aby obiekt okienka tworzył się automatycznie podczas podłączania się nowego klienta przez wątek odpowiedzialny za obsługę połączenia. W momencie wysłania wiadomości przez klienta okienko było by pokazywane na ekranie. Sprawdziłem. W tą stronę działa dobrze, wiadomości są wyświetlane. Nie wiem natomiast jak dobrać się do tego obiektu aby wyświetlić okienko z poziomu innej klasy. Wątków jest tyle ile klientów, jak wybrać ten konkretny który odpowiada danemu klientowi. Znowu sytuacja podobna jak poprzednio...