1

114ボタンのあるSwingJavaアプリケーションがあります

ループでボタンを作成しました

 Container pane = getContentPane();
 JPanel panel = new JPanel();
 JButton b; 
 for(int i=1;i<115;i++)

  {

   b = new JButton(""+i);
   panel.add(b);
    }

したがって、すべてのボタンの名前はbになります!!!

これがここでの問題です。ボタンごとに異なるアクションを実行するために、ボタンごとに異なる名前を付けたいと思います。ActionListenerクラスによる

        JButton.addActionListener(new ActionListener() {

        public void actionPerformed(ActionEvent e)
        {

        }
    });  
4

2 に答える 2

1

いいえ、あなたのボタンには名前がありませんbbfor ループ内でローカル変数を使用しています。たとえば、ボタンの配列を作成して、JButtonそこにインスタンスを保存できます。後で、その配列をループしてボタンのテキストを変更できます。

于 2013-03-20T13:09:10.787 に答える
0

おそらく、ボタンと呼びたいものをキーとして使用して、ボタンをマップに追加できます。次に、ボタンに呼び出したいものを指定して Map で get() を呼び出すことにより、ボタンにアクセスできます。

于 2013-03-20T18:15:34.923 に答える