5

I want to add an image to a JButton. Background of the button is set to black. I tried to add the image on top of it, but nothing was shown. Background color was black but the image was missing.

Code

public class Test extends JFrame {

    JButton b;
    JPanel p;

    Test() {
        p = new JPanel(new BorderLayout());
        b = new JButton();
        b.setBackground(Color.black);
        ImageIcon img = new ImageIcon("C:\\Users\\Aksi\\Documents\\NetBeansProjects\\test'\\src\\test\\Black_B.ico");
        b.setIcon(img);
       
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        setSize(400, 400);
        p.add(b);
        add(p);
       validate();

   }
    public static void main(String args[]) throws IOException {
        Test ob = new Test();
        ob.setVisible(true);
    }
}
4

5 回答 5

5

两件事情

  1. 路径看起来不对
  2. Java 本身不支持该ico格式

看一下路径,路径中有引号

C:\\Users\\Aksi\\Documents\\NetBeansProjects\\test'\\src\\test\\Black_B.ico

只要确定它是否存在

于 2012-08-20T08:50:57.577 回答
2

请注意,您应该使用一些 Java 支持的图像格式,例如 .gif、.png。

于 2012-08-20T08:59:25.580 回答
1

它在 Oracle 上有很好的记录。

http://docs.oracle.com/javase/tutorial/uiswing/components/button.html

如何使用图标

祝你好运!

于 2012-08-20T09:34:10.753 回答
1

试试这个方法:

在您的 java 项目中创建包,如 com.icon 并在其中添加图标。

您将通过这种方式设置图标的 on 按钮:

button.setIcon(new ImageIcon(MyFrame.class.getResource("com/icon/Ok.png")));

只是一个建议:使用 .png 而不是 .ico。

于 2012-08-20T09:57:28.897 回答
0

这是我用来添加文字图片的方式:

Icon a=new ImageIcon(getClass().getResource("a.png"));
buttonname=new JButton("ButtonTittle",a);
于 2014-08-03T05:43:12.330 回答