Java矩形图像

3

你好,我对Java和编程都比较新,为了更好地掌握这两个领域,我决定制作一个大富翁游戏。

需要说明的是,这是我作为程序员的第一个项目,所以我的做法可能是最差的。

我正在使用Swing库,每个矩形都是用图形绘制的。

我正在使用矩形来构建布局,想知道是否有一种方法可以在每个矩形中添加不同的图像?

谢谢!


1
你是否正在使用Swing组件?需要更多信息才能适当地回答这个问题。 - mre
请提交(重要部分的)代码。 - Ishtar
@user985482:你应该编辑你的问题,提供更多信息。你是在使用Swing和布局管理器来以某种方式平铺你的矩形吗?当然,这样做是可行的,但对于棋盘游戏来说,更典型的做法是构建一个大图像,并自己处理其中的元素/精灵/任何东西(在你的情况下是每个单独的“矩形”)。 - TacticalCoder
1
是的,我正在使用Swing组件。 - Nistor Alexandru
3个回答

2

看起来你正在尝试使用Swing布局板。如果是这样,你可以简单地设置 JLabel 的图标。

JLabel label = new JLabel(new ImageIcon( image ));

然而,个人认为我会将Monopoly板设计为JPanel,并编写自定义绘制方法。在这种情况下,您可以通过简单使用Graphics类的drawImage()方法来进行操作。


2
您可能需要做的是将每个矩形创建为JPanel。然后,您可以使用GridLayout创建网格,然后像这里所示设置JPanel的背景。
您还可以在每个JPanel中放置JLabel,并像这里所示使用setIcon()方法。

2

创建适当布局的面板,为了方便起见,建议您使用带边框的 JPanel 而不是绘制矩形,并遵循以下步骤:

 image = ImageIO.read(new File(path));
  JLabel picLabel = new JLabel(new ImageIcon(image));

太棒了!现在你的图片是一个 Swing 组件了!像通常一样将它添加到框架、面板或其他组件中!可能还需要重新绘制,例如:
  jpanel.add(picLabel);
  jpanel.repaint(); 

按您所需的图片数量进行操作 :) 祝编码愉快...干杯 :)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接