0
私はモデルビューコントローラ(MVC)を実装していますが、コントローラクラスでは、どのビューのJButtonがイベントを発生させたのかを知る必要があります。どのようにイベントを生成したクラスボタンが作成されているのか知ることができますか?
私はモデルビューコントローラ(MVC)を実装していますが、コントローラクラスでは、どのビューのJButtonがイベントを発生させたのかを知る必要があります。どのようにイベントを生成したクラスボタンが作成されているのか知ることができますか?
は、イベントのgetSource()
方法を使用します
Object source = event.getSource();
if (source == button1) {
...
}
else if (source == button2) {
...
}
をしかし、あなたはおそらく、単一のActionListenerは、最初の場所で複数のボタンからのイベントを処理することを避ける必要があります。各ボタンにはそれぞれ独自の責任があるため、単一のリスナーで処理されます。
はい、書いていますが、どちらと比較しても.... – Arsalan
@Arsalan私はあなたのコメントを理解できませんでした。 「どちらと比較する」とはどういう意味ですか? –
@JB Nizet if(event.getSource()== ????) イベント処理クラスが異なり、そのクラスでそのボタンにアクセスできないため、比較する必要があります。 My Viewクラスにはボタン(イベントを発生させた)と私は私のコントローラクラスでそのイベントを処理しています。 – Arsalan