0

编辑:我真正想要的是:如何update从第二个窗口激活,但从第一个窗口激活。我已经添加了两个update(s)。

我有 2 个窗口,每个窗口都有一个观察者。当我用观察者更新该窗口中的任何内容时,它就起作用了!

但是我还想更新另一个窗口。我认为我的观察者不对,但不知道如何改变它

public class ObserverCtrl extends Observable {

    public ObserverCtrl(Secretariat window, ) {

        this.addObserver(window);
    }

    public ObserverCtrl(Comisie window) {

        this.addObserver(window);
    }



    public void refresh () {
        this.setChanged();
        this.notifyObservers();
    }

}

主文件

Secretariat window = new Secretariat();
Comisie window2 = new Comisie();

每个 JFrame(窗口)都有

private ObserverCtrl observer;
this.observer = new ObserverCtrl(this)

第一个窗口,秘书处

@Override
public void update(Observable arg0, Object arg1) {
    candidat_TextField.setText(null);
    sectie_TextField.setText(null);
    codSectie_TextField.setText(null);
    confirmare_TextArea.setText(null);
    listModelCandidati.clear();
    listModelSectii.clear();
    loadSectiiListModel();
    loadCandidatiListModel();
}

第二个窗口,Comisie

@Override
public void update(Observable arg0, Object arg1) {
    this.loadSectiiListModel();

}

我有一个事件点击按钮Secretariat。它自己激活,update()我希望它也激活updateComisie

我应该如何实现,以便通过观察者从#1 通知窗口#2 是可能的?

4

1 回答 1

0

我制作了另一个类extends Observable,用它来通知 Window #2

于 2013-02-15T17:36:15.667 回答