我想用一张图片作为框架的背景,可是加载后什么都没有显示出来!!
是实用一个继承JPanel的类NewPanel产生的对象来实现的,代码如下
class NewPanel extends JPanel
{    
   public NewPanel(){}
   
ImageIcon icon = new ImageIcon("/topic.jpg"); public void paintComponent(Graphics g) {

g.drawImage(icon.getImage(), 0, 0, this.getWidth(), this.getHeight(),this);

}     }
附加说明:图片topic.jpg放在跟java程序当前目录是不是写错了,应该用什么方法啊?
请高手帮我解决下,谢谢

解决方案 »

  1.   

    可能是drawImage的时候出现错误
      

  2.   

    楼主可以试试这个:用null布局就是这么容易:   
      Icon   logoImage=new   ImageIcon("resource\\Welcomew.gif");   
      labelDraw=new   JLabel(logoImage);                     //加入图片   
      labelDraw.setBounds(new   Rectangle(0,0,800,600));还需要在JPanel里add(labelDraw)
      

  3.   

    class NewPanel extends JPanel {  
      
        public NewPanel(){} 
      
        //获取的是url路径实现的,图片要和.class文件放在一起!如果你在applet下,有更简单的方法
        ImageIcon icon = new ImageIcon(getClass().getResource("topic.jpg"));     public void paintComponent(Graphics g) {           g.drawImage(icon.getImage(), 0, 0, this.getWidth(), this.getHeight(),this); 
        }   
      

  4.   

    我把你给出的panel加在jframe里面试了一下
    是可以执行的。
    你可能忘了加入容器吧。
    用applet,frame都可以做