java小程序问题 。求帮助
我编了个图形界面,有三个按钮,点击每个按钮,按钮事件响应,在下面面板中删除和添加响应的组件,第一遍点击按钮,功能正常,但是第二次点击,事件就不再响应。麻烦老师 帮忙看看,怎么解决。
代码如下:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class ceshi{
public static void main(String args[]){
new myProject("图书管理系统");
}
}
class myProject extends JFrame implements ActionListener{
JButton button1,button2,button3,button4;
JLabel label,label1;
JTextField text;
JPanel panel;
Box box;
myProject(String s){
super(s);
setBounds(10,10,500,500);
setLayout(null);
panel=new JPanel();
button1=new JButton("图书库存目录");
button2=new JButton("借书界面");
button3=new JButton("还书界面");
label=new JLabel("欢迎进入"+","+"图书管理系统");
box=Box.createHorizontalBox();
box.add(button1);
box.add(Box.createHorizontalStrut(5));
box.add(button2);
box.add(Box.createHorizontalStrut(5));
box.add(button3);
box.add(Box.createHorizontalStrut(5));
panel.add(label);
add(box);
add(panel);
button1.addActionListener(this);
button2.addActionListener(this);
button3.addActionListener(this);
box.setBounds(60,0,300,30);
panel.setBounds(0,40,500,450);
panel.setLayout(null);
label.setBounds(140,100,200,30);
setVisible(true);
validate();
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
}
public void actionPerformed(ActionEvent e){
panel.removeAll();
repaint();
if(e.getSource()==button1){
button1=new JButton("按钮1");
panel.add(button1);
button1.setBounds(0,0,80,30);
}
else if(e.getSource()==button2){
button2=new JButton("按钮2");
panel.add(button2);
button2.setBounds(50,0,80,30);
}
else if(e.getSource()==button3){
button3=new JButton("按钮3");
panel.add(button3);
button3.setBounds(100,0,80,30);
}
repaint();
validate();
System.out.println("点击按钮响应");
}
}