【问题标题】:Add images into an array JPanel将图像添加到数组 JPanel
【发布时间】:2016-10-02 10:41:56
【问题描述】:

我用 JPanel 做了一个棋盘。使用 ImageIcon 不起作用,所以我查看了该站点,但所有这些似乎都很复杂,如何将图像添加到数组中,例如

tiles[0][0].setIcon(br); 

这是我为棋盘创建的 JPanel

private JPanel[][] tiles = new JPanel[6][6];

我试过这个:

    ImageIcon bn = new ImageIcon("art/BN.gif");
    ImageIcon bb = new ImageIcon("art/BB.gif");
    ImageIcon br = new ImageIcon("art/BR.gif");
    ImageIcon wn = new ImageIcon("art/WN.gif");
    ImageIcon wb = new ImageIcon("art/WB.gif");
    ImageIcon wr = new ImageIcon("art/WR.gif");
    tiles[0][0].add(new JLabel(bn));
    tiles[0][1].add(new JLabel(wn));
    tiles[0][2].add(new JLabel(wb));
    tiles[0][3].add(new JLabel(wb));
    tiles[0][4].add(new JLabel(wn));
    tiles[0][5].add(new JLabel(wr));
    tiles[5][0].add(new JLabel(br));
    tiles[5][1].add(new JLabel(bn));
    tiles[5][2].add(new JLabel(bb));
    tiles[5][3].add(new JLabel(bb));
    tiles[5][4].add(new JLabel(bn));
    tiles[5][5].add(new JLabel(br));

但它不起作用

【问题讨论】:

  • 你能看到面板吗?你能看到标签吗?有什么错误吗?
  • @Fast SnailCant 看不到标签
  • ambs 的回答对你有用吗?

标签: java image jpanel


【解决方案1】:

您的图像存储在哪里?究竟是什么不起作用?

我将在黑暗中试一试,并假设您正在尝试加载嵌入在您的应用程序中的文件。

取自; https://docs.oracle.com/javase/7/docs/api/javax/swing/ImageIcon.html

ImageIcon(String filename)

从指定的文件创建一个 ImageIcon。

ImageIcon(URL location)

从指定的 URL 创建一个 ImageIcon。

试试这个;

ImageIcon bn = new ImageIcon(getClass().getResource("art/BN.gif"));

它将尝试从 .getResource() 返回的 URL 创建一个 ImageIcon

【讨论】:

    猜你喜欢
    • 2012-07-12
    • 1970-01-01
    • 1970-01-01
    • 2017-09-07
    • 2010-09-22
    • 2013-12-16
    相关资源
    最近更新 更多