【发布时间】:2012-11-02 15:26:46
【问题描述】:
我的问题是背景图像覆盖了我在 JPanel 中使用的所有 ImageIcon。例如,在这段代码 sn-p 中,我试图将 setIcon 设置为我在面板中拥有的标签之一。但是背景图像覆盖了它。我怎样才能解决这个问题?我是在paint方法之外还是在它内部使用label.setIcon()都没有关系。
public void paint(Graphics g) {
super.paint(g);
g.drawImage(backgroundImage, 0, 0, this);
label1.setIcon(iconImage);
}
提前致谢!
【问题讨论】:
-
覆盖的方法是
paintComponent(),而不是paint()。不应在paintComponent()方法中设置图标。并在调用super.paintComponent()之前尝试绘制图像,以便在您的背景图像上进行“正常”绘制。 (虽然没有经过测试,这就是为什么我不将此作为答案发布)
标签: java swing paint drawimage imageicon