如果 Paint () 方法已用于其他目的,如何在 JPanel 中使用图像作为背景? (我试图在面板中绘制图像)。
这是我用铅笔绘制的代码,但我不知道如何添加图像作为背景?
@Override
public void paint(Graphics g) {
if (x >= 0 && y >= 0) {
g.setColor(Color.BLACK);
g.fillRect(x, y, 4, 4);
}
}
谢谢迭戈
建议:
- 不要在 JPanel 中绘制
paint(...)
方法而是使用它的paintComponent(...)
方法。造成这种情况的原因有多种,其中之一是如果您使用paint(...)
方法,那么您还负责绘制 JPanel 的边框和子组件,并且有可能弄乱这些家伙的渲染。而且您还会失去 Swing 的自动双缓冲功能。
- 首先调用父类的 super 方法,然后再调用该方法中的任何其他代码。这将允许 JPanel 刷新其背景并执行可能需要完成的任何图形管理工作。
- 接下来使用绘制背景图像
g.drawImage(...)
,
- 然后画你的铅笔画。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)