日期:2014-05-20  浏览次数:20837 次

动态创建的按钮怎么设置监听?
//想利用for循环设置动态按钮,但是i的值总是11
for(int i = 0; i < 10 ; i++ ){
buttons[i].addMouseListener(new MouseAdapter(){
public void mouseEntered(MouseEvent e){

buttons[i].setOpaque(true);
buttons[i].setBackground(new Color(0,158,203,255));

}
public void mouseExited(MouseEvent e){
buttons[i].setBackground(new Color(0,0,0,0));
buttons[i].setOpaque(false);

}
});
}

想用i循环设置监听器,但是结果出来,i总是一个定值,该怎么办呢?

------解决方案--------------------
不知道你按钮用的是Swing还是AWT的,我按Swing写了:
public void mouseEntered(MouseEvent e){
JButton btn = (JButton)e.getSource();
btn.setOpaque(true);
btn.setBackground(new Color(0,158,203,255));
}