java中的swing设计界面时怎么加上背景图片。而不覆盖什么label等控件?

如题所述

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

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());

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

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-12-15
mport java.awt.Container;

import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class Test extends JFrame {

public Test() {
setBak(); //调用背景方法
Container c = getContentPane(); //获取JFrame面板
JPanel jp = new JPanel(); //创建个JPanel
jp.setOpaque(false); //把JPanel设置为透明 这样就不会遮住后面的背景 这样你就能在JPanel随意加组件了
c.add(jp);
setSize(540, 450);
setVisible(true);
}
public void setBak(){
((JPanel)this.getContentPane()).setOpaque(false);
ImageIcon img = new ImageIcon("c://Sunset.jpg"); //添加图片
JLabel background = new JLabel(img);this.getLayeredPane().add(background, new Integer(Integer.MIN_VALUE));
background.setBounds(0, 0, img.getIconWidth(), img.getIconHeight());
}

public static void main(String[] args) {
Test s = new Test();
s.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}

}追问

路径添加对了,我把有代码和放在同一包下的图片的路径写了进去。不显示。晕了

本回答被提问者采纳
第2个回答  2011-09-07
public class Test extends JFrame {

public Test() {
setBak(); //调用背景方法
Container c = getContentPane(); //获取JFrame面板
JPanel jp = new JPanel(); //创建个JPanel
jp.setOpaque(false); //把JPanel设置为透明 这样就不会遮住后面的背景 这样你就能在JPanel随意加组件了
c.add(jp);
setSize(540, 450);
setVisible(true);
}
public void setBak(){
((JPanel)this.getContentPane()).setOpaque(false);
ImageIcon img = new ImageIcon("c://Sunset.jpg"); //添加图片
JLabel background = new JLabel(img);this.getLayeredPane().add(background, new Integer(Integer.MIN_VALUE));
background.setBounds(0, 0, img.getIconWidth(), img.getIconHeight());
第3个回答  2015-09-29
mport java.awt.Container;import javax.swing.ImageIcon;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;public class Test extends JFrame { public Test() { setBak(); //调用背景方法 Container c = getContentPane(); //获取JFrame面板 JPanel jp = new JPanel(); //创建个JPanel jp.setOpaque(false); //把JPanel设置为透明 这样就不会遮住后面的背景 这样你就能在JPanel随意加组件了 c.add(jp); setSize(540, 450); setVisible(true); } public void setBak(){ ((JPanel)this.getContentPane()).setOpaque(false); ImageIcon img = new ImageIcon("c://Sunset.jpg"); //添加图片 JLabel background = new JLabel(img);this.getLayeredPane().add(background, new Integer(Integer.MIN_VALUE)); background.setBounds(0, 0, img.getIconWidth(), img.getIconHeight()); } public static void main(String[] args) { Test s = new Test(); s.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); }}

java中swing窗体美化(swing的控件美化)
4、java做C\/s的程序主要是用swing技术你可以看看netbean,用netbean开发swing效率很高,控件都是拖拽后,自动生成代码的。5、设置一个卡片式布局,写一个jpanel,背景颜色,透明度,加载到上面,设置按钮不可用即可。6、建议你用背景重绘的方式。如果用Jlabel的话。

Java Swing 怎么自定义界面背景图片
在java swing中需要为容器添加自定义图片或者背景图片。提供两种简单的解决方案,一种利用JPanel,另一种利用JLabel,代码如下:1、JPanel(源代码)package oo; import java.awt.Graphics; import java.awt.Image; import java.io.File; import javax.swing.ImageIcon; import javax.swing.JFram...

Java swing 窗体如何设置背景图片?
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.ge...

Java窗体如何设置背景图片?急求!!
可以新建个面板,在面板里放入带图片的JLabel,填满面板即可。JPanel jp = new JPanel(); \/\/新建面板 jp.setLayout(new FlowLayout()); \/\/设置面板布局 ImageIcon ii=new ImageIcon(getClass().getResource("\/Picture\/i.jpg"));JLabel uppicture=new JLabel(ii); \/\/往面板里加入JLabel this....

Java中JInternalFrame内部窗体如何设置它的背景图片
Java 中可以用 JLayeredPane,你把一个 JLabel 设置图标后放置在 z 坐标的最底层就可以了。样例教程:http:\/\/docs.oracle.com\/javase\/tutorial\/uiswing\/components\/layeredpane.html

java怎么让背景图片不覆盖界面?
protected JTextField wen;protected JButton q;protected String ll;Ci() {this.setBounds(100, 100, 420, 320);a = new JPanel();si = new JLabel("i");qing = new JLabel("请输入关键字");wen = new JTextField(10);q = new JButton("确定");q.addActionListener(this);;a....

java里面怎么给一个窗体添加一张背景图片啊,需要详细代码!谢谢
import javax.swing.*;public class IS extends JFrame { IS(){ JPanel p=new JPanel();JLabel l=new JLabel();Icon icon=new ImageIcon("D:\\\\a.jpg"); \/\/在此直接创建对象 l.setIcon(icon);l.setBounds(0, 0, icon.getIconWidth(),icon.getIconHeight());p.add(l,new Integer...

java界面的背景图片怎么加,如果把图片加在JLabel上填满面板那怎么样才...
不知道你怎么加的。加背景图有很多种办法:- 加一个 JLabel,然后在 JLabel 上添加图片;- 直接重写 paint 方法,然后用 drawImage(Image src, int x, int y, int width, int height) 方法画上去。最大化的时候实际上是触发了窗口事件,添加窗口监听器,然后重写 windowResized() 方法,一旦...

java 窗体中添加背景图片的方法
import javax.swing.ImageIcon;import java.awt.event.*;public class Example1 extends JFrame{ public static void main(String[] args){ JFrame jf=new JFrame("系统登录");JPanel jpanel = new JPanel();jf.setContentPane(jpanel);\/\/设置窗口在屏幕中居中显示 double width = Toolkit....

javaswing整个JFrame设置背景图片
\/\/示例代码,下面的注释有说明背景图片 import java.awt.Container;import java.awt.event.ActionEvent;import java.awt.event.;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;public class Fre { ...

相似回答