1

たくさんのボタンがあります。すべてのボタンを使わずにすべてのボタンに actionListeners を追加する方法はありbutton.addActionListeners(this)ますか? コードがめちゃくちゃに見えます。

4

3 に答える 3

3

すべてのボタンに共通の動作が必要な場合は、共通コードを定義した抽象クラスを拡張する必要があります。MyButtonClassそのため、独自の add listener メソッドを使用して独自の抽象を定義します。

于 2012-10-28T17:27:47.630 に答える
3

いいえ、ありません。しかし、すべてのボタンが同じアクション リスナーを共有している場合 (これは非常に奇妙です)、配列またはコレクションに格納する必要があります。次に、次のことができます。

for (JButton button : allButtons) {
    button.addActionListener(this);
}
于 2012-10-28T17:28:41.753 に答える
3

すべてのボタンが単一のコンテナーにある場合、次のように単一のコンテナーを登録できますActionListener

for (Component c: container.getComponents()) {
   if (c instanceof JButton) {
      ((JButton)c).addActionListener(this);
   }
}
于 2012-10-28T17:31:21.967 に答える