Como redimensionar imagem na JLabel (Steech)

1 resposta
charleston10

Pesquisei na internet e no GUJ, porem nao achei nenhuma resposta.

Como redimensionar a imagem do JLabel de acordo com o tamanho do mesmo;

Um exemplo, estou com uma imagem pequena na minha label depois eu altero a imagem com uma maior que a de antes;
Mas a label muda o tamanho tambem, gostaria que ela permanecesse estatica e que a imagem se adequasse automaticamente.

Um exemplo é que no VB e no Delphi existe a opção Streech que faz isso automaticamente;

Como poderia ajeitar?

Eu pego a imagem assim:

//Recebe imagem
            ImageIcon imagem_produto = new ImageIcon(this.getClass().getResource("/Imagens/Produtos/minhaimagem.jpg"));
            JLabel imagem = new JLabel(imagem_produto);            
            imgProduto.setIcon(imagem_produto);

Até ;]

1 Resposta

erik.brunno

Faz assim:

private File file;

public void getRedimesionImage(JLabel label)

{

try

{

BufferedImage bufferImage = null, bufferImageAux;

bufferImage = ImageIO.read(file);

bufferImageAux = new BufferedImage(101, 115, bufferImage.getType());

Graphics2D g = bufferImageAux.createGraphics();

AffineTransform at = AffineTransform.getScaleInstance((double) 101 / bufferImage.getWidth(),

(double) 115/ bufferImage.getHeight());

g.drawRenderedImage(bufferImage, at);

label.setIcon(new ImageIcon(bufferImageAux));
}
        catch (IOException ex)
        {
            Logger.getLogger(Empresa.class.getName()).log(Level.SEVERE, null, ex);
        }  
}
Criado 15 de novembro de 2011
Ultima resposta 22 de nov. de 2012
Respostas 1
Participantes 2