首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

帮忙看下,JPanel里面插背景为什么不显示出来解决思路

2012-03-11 
帮忙看下,JPanel里面插背景为什么不显示出来public class LoginPanel extends JPanel { // 登陆界面Image

帮忙看下,JPanel里面插背景为什么不显示出来
public class LoginPanel extends JPanel { // 登陆界面

  Image backGround1 = Toolkit.getDefaultToolkit().getImage("./src/1615465.jpg");

  public LoginPanel() {
  super(true);
  this.setLayout(new BorderLayout());
  .....................
  .....................
  .....................

  @Override
  public void paintComponent(Graphics g) {
  super.paintComponent(g);
  Dimension size = this.getParent().getSize();
  g.drawImage(backGround1, 0, 0, size.width, size.height, null);
  }
}

public class Test {

  public static void main(String[] args) {
  JFrame frame = new JFrame("登陆");
  frame.setDefaultCloseOperation(3);
  frame.setSize(640, 480);
  Dimension displaySize = Toolkit.getDefaultToolkit().getScreenSize(); // 获得屏幕尺寸
  Dimension frameSize = frame.getSize(); // dialog尺寸
  frame.setLocation((displaySize.width - frameSize.width) / 2,
  (displaySize.height - frameSize.height) / 2); // 设置位置,屏幕中央

  frame.add(new LoginPanel());
  frame.setVisible(true);
}
}



[解决办法]
把你那Override方法改一改

Java code
public void paintComponent(Graphics g) {         Graphics2D g2 = (Graphics2D) g;        super.paintComponent(g);        Image img = Toolkit.getDefaultToolkit().getImage(backGround1);        g2.drawImage(img, 0, 0, this.getWidth(), this.getHeight(), this);    } 

热点排行