我想让我的JLabel
覆盖整个画面但是当我这样做时它不会覆盖文本字段和确定按钮。如何让JLabel
覆盖整个框架内容。
P / s我想将此jlabel
作为背景,以便我可以将jlabel
中的图标作为背景图片。
答案 0 :(得分:4)
这就是我要做的。使用JPanel
作为背景并输入一些自定义绘画代码。
将JPanel
拖到表单并展开以覆盖整个框架,作为背景。
右键点击JPanel
,然后从上下文菜单中选择自定义代码。您将看到以下对话框。您现在可以编辑代码。
请务必从下拉列表中选择自定义创建,然后输入
jPanel1 = new JPanel() {
BufferedImage img;
{
try {
img = ImageIO.read(getClass().getResource("/resources/stackoverflow5.png"));
} catch (IOException ex) { ex.printStackTrace(); }
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawImage(img, 0, 0, getWidth(), getHeight(), this);
}
};
您可能需要解决导入问题。只需按 Ctrl + Shift + I
此外,您还必须将图像的路径更改为路径。
这是我的文件结构
这是结果
答案 1 :(得分:0)
好吧,伙计们,我找到了答案here。在本教程中,当我们试图让Jpanel和Jlabel覆盖整个Jframe时,我们不得不:
1)右键单击Jframe。 2)选择布局 3)找到并单击Null Layout 4)然后你可以编辑你的Jlabel覆盖整个框架,如下所示。感谢那些帮助的人。
p / s:我知道感谢堆栈溢出的劝阻,但很难坚持这样做。再次感谢。