2)要用Image或BufferedImage对象
3)因为你重写了paint()方法,所以不能在Label里面显示图片。你重写了paint()方法后,整个容器都会变成画布,所以看不到Label组件,自然也就看不到图片。应该在paint方法里面用g.drawImage方法把图片在画布中画出来。参考Java API,Graphics的drawImage方法。
public Qua_Main_JFrame() {JPanel jpanel = new JPanel()
this.setContentPane(jpanel)
//
添加标签组件
GridLayout gird = new GridLayout(3,0)
jpanel.setLayout(gird)
ImageIcon img = new ImageIcon("src/JMXY.JPG")
JLabel imgLabel = new JLabel(img)//
将背景图放在标签里。
this.getLayeredPane().add(imgLabel, new Integer(Integer.MIN_VALUE))
imgLabel.setBounds(0,0,img.getIconWidth(), img.getIconHeight())
this.getLayeredPane().setLayout(null)
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE)
jpanel.setOpaque(false)
initComponents()
}
其中
Qua_Main_JFrame
为创建的
java
窗体项目名,图片按路径存放,注意一点,所有
的代码都应该放在
initComponents()
方法之上,这样你添加进窗体中的空间才会显示在
图片之上,否则看不见控件。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)