swing wątki

0

Cześć

W nazwie tematu są "wątki", tak naprawdę to nie mam pojęcia czy mój problem związany jest z wątkami. No ale dobra.
Problem jest następujący:

są dwa panele:

panel1
panel2

z czego panel1 zawiera panel2.

Panel2 posiada pole currentDescriptor, oraz metodę setDescriptor ustawiającą wartość tego pola.
Panel2 posiada także przycisk zdefiniowany następująco:

JButton button = new JButton(new AbstractAction() {

  @Override
  public void ActionPerformed(ActionEvent e) {

    // tutaj jakieś operacje na currentDescriptor
  }
});

Panel1 natomiast w konstruktorze wywołuje

Panel2.setDescriptor(new Descriptor());

Zatem, na chłopski rozum, Panel2.currentDescriptor powinien mieć nadaną jakąś wartość.
Jednakże, po wciśnięciu przycisku rzucany zostaje zawsze wyjątek null pointer exception. Nawet sprawdziłem w tym ActionPerformed że currentDescriptor nadal jest null.

Naprawdę nie wiem z czego to wynika, tak sobie pomyślałem że może ten event po wduszeniu przycisku jest wywoływany w osobnym wątku który nie jest zsynchronizowany, czy coś takiego... Ale nie mam pojęcia.

Wie ktoś może na czym polega tutaj problem, i ewentualnie ma jakieś materiały dotyczące tego wszystkiego?
Próbowałem szukać czegoś w internecie, ale szczerze to nawet nie wiem jak sformułować pytanie.

Pozdrawiam
sav

0

Google: Event Dispatch Thread.

Wszystko co ma wpływ na GUI powinno odbywać się w EDT.

1 użytkowników online, w tym zalogowanych: 0, gości: 1