JAVA在背景图片上显示标签内容的问题
我在JPanel p1面板上设置了一张背景图片,然后在另一个JPanel p2面板上添加了一张图片和一个标签,可是程序运行时,只显示p2的图片,但是不显示标签的内容。我写的代码在下面,求各位大神赐教!
import java.awt.*;
import javax.swing.*;
public class Test4 extends JFrame{
public static JLabel label , label1;
private Graphics g;
public static void main(String[] args) {
// TODO Auto-generated method stub
Test4 mg = new Test4();
}
public Test4()
{
setLocation(300,100);
setSize(319 , 427);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(true);
JPanel p1 = new JPanel();
JPanel p2 = new JPanel();
JPanel p3 = new JPanel();
ImageIcon background = new ImageIcon("F:/桌面/笨媳妇/a.jpg");
label = new JLabel(background);
label.setBounds(0,0,background.getIconWidth(),background.getIconHeight());
p1 = (JPanel)this.getContentPane();
p1.setOpaque(false);
p1.setLayout(null);
this.getLayeredPane().add(label,new Integer(Integer.MIN_VALUE));
this.setPreferredSize(new Dimension(background.getIconWidth(), background.getIconHeight()));
label1 = new JLabel("WO SHI LI HAO !!!");
p2.paint(g);
p2.add(label1);
add(p2 , BorderLayout.NORTH);
p1.add(label,0);
p1.add(p2,-1);
setVisible(true);
}
public void paint(Graphics g)
{
super.paint(g);
Image img = Toolkit.getDefaultToolkit().getImage(Panel.class.getResource("/b.jpg"));
g.drawImage(img, 15, 80, 50, 50 , this);
}
}
import java.awt.*;
import javax.swing.*;
public class Test4 extends JFrame{
public static JLabel label , label1;
private Graphics g;
public static void main(String[] args) {
// TODO Auto-generated method stub
Test4 mg = new Test4();
}
public Test4()
{
setLocation(300,100);
setSize(319 , 427);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(true);
JPanel p1 = new JPanel();
JPanel p2 = new JPanel();
JPanel p3 = new JPanel();
ImageIcon background = new ImageIcon("F:/桌面/笨媳妇/a.jpg");
label = new JLabel(background);
label.setBounds(0,0,background.getIconWidth(),background.getIconHeight());
p1 = (JPanel)this.getContentPane();
p1.setOpaque(false);
p1.setLayout(null);
this.getLayeredPane().add(label,new Integer(Integer.MIN_VALUE));
this.setPreferredSize(new Dimension(background.getIconWidth(), background.getIconHeight()));
label1 = new JLabel("WO SHI LI HAO !!!");
p2.paint(g);
p2.add(label1);
add(p2 , BorderLayout.NORTH);
p1.add(label,0);
p1.add(p2,-1);
setVisible(true);
}
public void paint(Graphics g)
{
super.paint(g);
Image img = Toolkit.getDefaultToolkit().getImage(Panel.class.getResource("/b.jpg"));
g.drawImage(img, 15, 80, 50, 50 , this);
}
}
...全文


Eclipse
