Problema com método getScaledInstance() da classe Image

0 respostas
antonioni.rocha

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(); }

Criado 19 de setembro de 2012
Respostas 0
Participantes 1