【发布时间】:2017-05-09 11:56:13
【问题描述】:
我正在创建一个摇摆应用程序(我知道 rip),并希望将 2 个 JLabel 放在彼此之上。这是场景
游戏是一个岛屿的鸟瞰图,岛屿被分成网格方块……现在每个网格方块上可以有许多 1 项和 1 种动物。我创建了两个 JLabel
JLabel animal = new JLabel();
JLabel item = new JLabel();
然后使用animal.setIcon(...); 设置他们的图像。现在这是完美的工作,但我想在动物标签上放置一个图像,这样我就可以在同一个网格正方形上看到两个。
我正在使用扩展 JPanel 的类中编写以下代码,稍后我将其添加到 jframe(这是 gridsquare 类)
if(inputItem!= null){
try{
imgItem = ImageIO.read(inputItem);
itemLabel.setIcon(new ImageIcon(imgItem.getScaledInstance(this.getWidth(), this.getHeight(), Image.SCALE_SMOOTH)));
this.add(itemLabel);
}catch(Exception e){
//do something
}
}
所以这很好用。我也为 inputAnimal 和 imgAnimal 变量做了一些非常相似的事情。只是想知道我如何才能将它们添加到彼此之上。我试过简单地按顺序添加它们,但这不起作用。
提前致谢
【问题讨论】:
-
您不需要两个标签。你需要一个OverlayIcon