Java JFrame将背景图像放在文本下

Java JFrame将背景图像放在文本下,java,swing,interface,background,jframe,Java,Swing,Interface,Background,Jframe,我的Java接口有一些问题,我试图在我的JFrame上放置一个背景图像我在互联网上搜索,发现有3行代码可以工作(它可以打印图像),但问题是图像比其他所有代码都要长,文本也要宽,至少我认为是这样的 下面是我用来打印图像的代码: setLayout(new BorderLayout()); setContentPane(new JLabel(new ImageIcon("lock.jpg"))); setLayout(new FlowLayout()); 有人能解释一下发生了什么或为什么会发生这种

我的Java接口有一些问题,我试图在我的
JFrame
上放置一个背景图像
我在互联网上搜索,发现有3行代码可以工作(它可以打印图像),但问题是图像比其他所有代码都要长,文本也要宽,至少我认为是这样的

下面是我用来打印图像的代码:

setLayout(new BorderLayout());
setContentPane(new JLabel(new ImageIcon("lock.jpg")));
setLayout(new FlowLayout());

有人能解释一下发生了什么或为什么会发生这种情况并给出解决方案吗?

我建议在其他地方声明您的JLabel,然后对其调用getGraphics(),然后使用该图形对象先绘制一个图像,然后再绘制一个字符串。

您有不止一个选项。1.您可以替代绘制方法并使用图形对象绘制。2。您可以使用分层窗格,如果使用某种layout@TomasBisciak-我不会说它是完全相同的,但OP肯定会从阅读答案中受益。