Olá, estou com um problema do qual já tinha conseguido resolver e não lembro qual foi a causa.
É o seguinte, eu tenho um JPanel que é carregado por um frame.
Esse JPanel precisa ter uma imagem de fundo o problema é que o método paintComponents(); nunca é chamado.
Código do meu construtor:
public PanelImagem(ImageIcon image) {
this.fundo = image;
if (image == null) {
fundo = new ImageIcon(getClass().getResource("/egs/jogodaforca/view/imageFundo.png"));
}
setSize(150, 230);
setBorder(BorderFactory.createSoftBevelBorder(BevelBorder.LOWERED));
}
Código paintComponents()
@Override
public void paintComponents(Graphics g) {
System.out.println("PAAINT");
Graphics2D g2d = (Graphics2D) g.create();
g2d.drawImage(fundo.getImage(), 0, 0, null);
g2d.dispose();
}
Depois de vários testes, tentei forçar a chamada do paintComponents() para ver o que acontecia e ele acusa NullPointerException na linha:
O que esta errado?