以下是我的代码:
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
public class Demo {
private static JButton button=new JButton();
private static Image bomb=Toolkit.getDefaultToolkit().getImage("src/image/1.jpg");
public static void main(String[] args) {
// TODO Auto-generated method stub
//初始化窗体
JFrame jf=new JFrame();
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setBounds(200, 200, 200, 200);
jf.setLayout(null);
//添加按钮
jf.add(button);
button.setBounds(50, 50, 23, 23);
//添加事件监听器
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
button.setEnabled(false);
button.setDisabledIcon(new ImageIcon(bomb));
}
});
jf.setVisible(true);
}
}
结果当button的事件监听器相应后却不显示设置的bomb图片,但是如果把button.setDisabledIcon(...)改为button.setIcon(...)则可以显示bomb的灰度图片。这是怎么回事,求解。