I want to add an ImageIcon to the Panel, but I got this Exception (
java.lang.NullPointerException: Cannot invoke "java.net.URL.toExternalForm()" because "location" is null
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException: Cannot invoke "javax.swing.JLabel.setBounds(int, int, int, int)"
because "this.LABEL2" is null and I do not know how to solve it, help me please.
import javax.swing.*;
import java.awt.*;
public class ShowQR extends JFrame{
private JPanel PANEL;
private JLabel LABEL2;
private ImageIcon ICON;
public ShowQR(){
super("Choose background color");
ICON = new ImageIcon(getClass().getResource("qr-code2.png"));
LABEL2= new JLabel(ICON);
PANEL.setLayout(null);
LABEL2.setBounds(50, 50, 50, 50);
PANEL.add(LABEL2);
add(PANEL);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setSize(400,400);
}
}
public ImageIcon image = new ImageIcon(Test.class.getResource("give image path"));
Please try this way. give the image path in you file structure.
This might help
ICON = new ImageIcon("specify icon path here ");
//you might need to scale the icons size
Image image = image.getImage().getScaledInstance(width, height,Image.SCALE_DEFAULT);
ImageIcon ICON2 = new ImageIcon(image);
LABEL2 = new JLabel(ICON2);
LABEL2.setBounds(x,y,width,height);
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.