图片路径问题:Swing--ImageIcon(url)

图片路径问题:Swing–ImageIcon(url)

源代码:

import javax.swing.*;
import java.awt.*;
import java.net.URL;

public class ImageDemo1 extends JFrame {

    public ImageDemo1(){
        JLabel label = new JLabel("小事情");
        //获取图片的地址
        URL url = ImageDemo1.class.getResource("ye.jpg");

        ImageIcon imageIcon = new ImageIcon(url);
        label.setIcon(imageIcon);
        label.setHorizontalAlignment(SwingConstants.CENTER);

        Container container = getContentPane();
        container.add(label);

        setVisible(true);
        setBounds(100,100,500,400);
        setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

    }
    public static void main(String[] args) {
        new ImageDemo1();
    }
}

报错:

Exception in thread "main" java.lang.NullPointerException
	at javax.swing.ImageIcon.<init>(ImageIcon.java:217)
	at com.ggl.lesson04.ImageDemo1.<init>(ImageDemo1.java:16)
	at com.ggl.lesson04.ImageDemo1.main(ImageDemo1.java:29)

Process finished with exit code 1
报错原因:
//获取图片的地址
        URL url = ImageDemo1.class.getResource("ye.jpg");
        ImageIcon imageIcon = new ImageIcon(url);

//路径为null,空指针异常

//可以进行如下修改:
    ImageIcon imageIcon = new ImageIcon("src/com/ggl/lesson04/ye.jpg");

修改后的代码:

import javax.swing.*;
import java.awt.*;


public class ImageDemo1 extends JFrame {

    public ImageDemo1(){
        JLabel label = new JLabel("小事情");
        //获取图片的地址
       ImageIcon imageIcon = new ImageIcon("src/com/ggl/lesson04/ye.jpg");

        label.setIcon(imageIcon);
        label.setHorizontalAlignment(SwingConstants.CENTER);

        Container container = getContentPane();
        container.add(label);

        setVisible(true);
        setBounds(100,100,700,600);
        setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

    }
    public static void main(String[] args) {
        new ImageDemo1();
    }
}

运行效果:
在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值