1

ユーザーがプロパティシート(ビュー)に変更を加えたときにイベントをインターセプトしようとしています。

ノードにとを追加しようPropertyChangeListenersNodeListenersしましたが、どちらもノードが変更されたときにイベントを発生させません。PropertyChangeListenerまた、それ自体にaを追加してみましたPropertySheetViewが、サイコロはありませんでした。

私が欠けているアイデアはありますか?

4

1 に答える 1

0

モデルに追加する必要がありPropertyChangeSupportます(ノードがラップしているオブジェクトは何でも)。

private PropertyChangeSupport support = new PropertyChangeSupport(this);

// add interested listeners here
public void addPropertyChangeListener(PropertyChangeListener listener) {
    support.addPropertyChangeListener(listener);
}

// don't forget to remove them
public void removePropertyChangeListener(PropertyChangeListener listener) {
    support.addPropertyChangeListener(listener);
}

次に、UIを使用してモデルの値を変更すると、プロパティのセッターでプロパティの変更を実行できます。

public void setMyValue(String myValue) {
    String oldValue = this.myValue;
    this.myValue = myValue;
    support.firePropertyChange("myValue", oldValue, this.myValue);
}

詳細については、NetBeansノードAPIチュートリアルを参照してください。また、 NetBeansプラットフォームユーザーフォーラムでNetBeansプラットフォームについて質問した場合は、運が良く、応答が速くなる可能性があります。

于 2011-11-13T14:21:57.380 に答える