JComponent はどのようにして親 J(Internal)Frame のクローズドイベントについて通知できるのでしょうか?

StackOverflow https://stackoverflow.com/questions/482029

質問

他のアクティビティを監視するコンポーネントを作成したいのですが、コンポーネントのウィンドウが閉じられるとそのリスナーが削除されます。

この削除コードを何度も書きたくはありませんが、コンポーネント自体で処理できるようにしたいと考えています。(どうやって)できるでしょうか?

ありがとう!

役に立ちましたか?

解決

JFrame クラス (ウィンドウ) には processWindowEvent コールバック これは、 Windowevent

このコールバックを登録し、パラメーターが の WINDOW_CLOSED 内部で削除コードを呼び出すことができます。

最終的に、削除コードは (必要に応じて) 1 回だけ記述されます。

を参照してください。 API 詳細については。

アップデート: こちらも参照 これ

他のヒント

私はそのようなことを書くでしょう。

class ListenToWindow
extends WindowAdapter
{
MyInternalFrame frame;

public void windowClosed(event)
   {
   this.frame.removeAllTheRequiredListeners();
   }
}

(...)
JFrame window;
MyInternalFrame frame;
(...)
window.addWindowLister(new ListenToWindow(frame));
(...)
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top