比如有很多个JButton, 它们的功能类似问题, 如何处理它们即方便, 又高效。我不想一个一个的创建和添加事件处理。

解决方案 »

  1.   

    一個一個的加  還是必要的你可以定義一個統一的actionListener循環創建jbutton的時候  加上actionListener,然後可以用e.getComponent() 去區別不同的jbutton,做業務上的區別處理
      

  2.   

    写一个统一的actionListenerbutton 设置下actioncommand在actionlisterer 使用e.getActionCommand()来区分不同button的触发
      

  3.   

    可以这样public class Test extends JFrame implements ActionListener
    {
        jbutton2.addActionListener(this);
        jbutton3.addActionListener(this);
        ...
        jbutton4.addActionListener(this);
        ....
        public void actionPerformed(ActionEvent e)
        {
            if(e.getSource==jbutton1)
               {处理}
            if(e.getSource==jbutton2)
                {处理}
            ...
         } 
    }
       
      

  4.   

    JButton makeButton(String name){
          Jbutton jb = new jbutton();
          jb.setText(name);
         jb.addActionListerner();
       return jb;
    }button1 = makeButton("button1");
    button2 = makeButton("button2");
    button3 = makeButton("button3");
    button4 = makeButton("button4");
      

  5.   

    用数组啊
    JButton bts = new JButton[10];
    for(int i=0; i<10; i++) ...