如何在swing里面设置背景图片???

如何在swing里面设置背景图片???,第1张

你的代码是正确的,可能是你图片的位置没有放对。我本地试过了,你可以像下面这样做:

首先修改一行代码:/res改为res

Image image=new ImageIcon("res/bg.jpg").getImage() 

图片放到:

简单来说就是重写paint方法,然后调用画笔的drawImage这个方法。

如:

对一个JPanel加入背景图片“bg01.png”,那么就重写paint这个方法如下

在类里

/**

* 背景图片

*/

Image backgroundImage = null

//这就是重写paint方法

public void paint(Graphics g)

{

loadRecources()

if(backgroundImage != null)

{

g.drawImage(backgroundImage, 0, 0, this)

}

}

public void loadRecources()

{

//载入背景图片

if(backgroundImage == null)

{

try

{

backgroundImage = ImageIO.read(new File("resources/Images/bg01.png"))

} catch (IOException e)

{

System.out.println("缺少背景图片")

JOptionPane.showMessageDialog(this, "找不到背景图片!", "文件缺失", JOptionPane.ERROR_MESSAGE)

}

}

}

这里只是写的一个示例代码,lz看看,然后分析下写一个类,然后如此尝试下,应该很快就能成功。

通过以下方式设置下背景就可以了:

background = new ImageIcon("images/backImage.png")

backImage = new JLabel(background)

backImage.setBounds(0, 0, background.getIconWidth(),

background.getIconHeight())

backPanel = (JPanel) this.getContentPane()

backPanel.setOpaque(false)

this.getLayeredPane().setLayout(null)

this.getLayeredPane().add(backImage, new Integer(Integer.MIN_VALUE))

backPanel.setLayout(new BorderLayout())

这样就可以把图片放在最下面了,效果图:


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/bake/11399358.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-15
下一篇2023-05-15

发表评论

登录后才能评论

评论列表(0条)

    保存