Tenho uma classe que estende JPanel e sobrescreve o método public void paintComponent(Graphics g), o qual deve pintar no próprio JPanel uma imagem png redimensionada. Estou fazendo como abaixo, porém quando o frame com o painel é exibido, a imagem redimensionada fica piscando aleatoriamente.
Quando peço para apenas usar o método drawImage(), a imagem é pintada normalmente no JPanel. Onde está o erro?
@Override
public void paintComponent(Graphics g) {
super.paintComponent(g);
ImageIcon imageIcon = new ImageIcon(getClass().getResource("/moseelapplication/gui/img/backgrounds/1_1.png"));
Image image = imageIcon.getImage().getScaledInstance(100, -1, Image.SCALE_DEFAULT);
Graphics2D g2d = (Graphics2D) g.create();
g2d.drawImage(image, 0, 0, this);
g2d.dispose();
}