>我正在尝试将背景图像添加到JPanel。我尝试过使用 JLabel,但是当我尝试以这种方式时,我无法在图像顶部添加按钮。
在 IntelliJ 中,gui 生成器代码是隐藏的,大多数其他教程都使用此生成的代码。
如何使用IntelliJ的GUI构建器实现这一点?
可以使用这个ImageComponent
类相当容易地将图像合并到 JFrame/JPanel 中(您可以像处理任何其他组件一样处理它(:
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.*;
import javax.imageio.*;
class ImageComponent extends Component {
BufferedImage img;
public void paint(Graphics g) {
g.drawImage(img, 0, 0, null);
}
public ImageComponent(String path) {
try {
img = ImageIO.read(new File(path));
} catch (IOException e) {
e.printStackTrace();
}
}
public Dimension getPreferredSize() {
if (img == null) {
return new Dimension(100,100);
} else {
return new Dimension(img.getWidth(), img.getHeight());
}
}
}