求高手告诉我,我的问题出在哪里,我想了一上午都没想出来,我想的是设置按钮的图标而不是背景,
未设置按钮图标之前运行的效果
设置按钮图标之后运行的效果
package button;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class button2 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO 自动生成的方法存根
EventQueue.invokeLater(new Runnable() //事件分派线程(记住)
{
public void run(){
JFrame frame=new ButtonFrame2();
frame.setTitle("button");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
});
}
}
class ButtonFrame2 extends JFrame { //方法三,语句更简化,且没有接口
private JPanel buttonpanel;
private static final int WIDTH=300;
private static final int HEIGH=200;
ImageIcon ima=new ImageIcon("d:/Java专区/图标/夜.jpg");//图标
public ButtonFrame2(){
setSize(WIDTH,HEIGH);
buttonpanel=new JPanel();
makeButton("black",Color.black);
makeButton("white",Color.white);
makeButton("pink",Color.pink);
this.add(buttonpanel);
this.setVisible(true);
}
public void makeButton(String name,final Color backgroundColor){
JButton button=new JButton(name);
button.setIcon(ima); //按钮添加图标
buttonpanel.add(button);
button.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e) {
// TODO 自动生成的方法存根
buttonpanel.setBackground(backgroundColor); }
});
}
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。