0

JPanel に ActionListener を書き込む必要があります。

必要なアクションを引き起こすために押されたボタンに応じたタスク。私が知っている唯一の方法は、event.getActionCommand()その文字列を使用してボタンからラベルを取得し、それに依存して目的のアクションを引き起こすことです。

しかし、ラベルに束縛するのは間違った方法だと思います。非常に間違った方法です。他のオプションはありますか?

言い換えれば、私の質問は次のとおりです。押されたボタンをどのように判断できますか?

4

2 に答える 2

2

私がやったことの1つは、次のようなものです。

// Action Listener method
public void actionPerformed(ActionEvent e) {
    // Did somebody push my button?
    if (e.getSource() == myButton) {
        myCaller.doButton(myButton, myValue);
    }
}
于 2012-09-15T15:25:31.703 に答える
1

Swing はイベント駆動型のアーキテクチャです。そのため、コンポーネントと何らかの種類の対話を実行しようとするときは常に、コンポーネントに関連付けられた対応するイベントをキャプチャまたは処理することが理想的です。

あなたがする必要があるのはActionListenerを追加することであり、アクションが実行されると (この場合はボタンを押す)、コードで話していたメソッド ( 「必要なアクション」 ) を呼び出すことになります。ActionListener を初めて使用する場合は、「アクション リスナーの作成方法」が役立つことがあります。

于 2012-09-15T15:24:02.727 に答える