[RESOLVIDO] Redimensionamento automático ao usar o setIcon() em um JLabel

Olá pessoal,
Espero que vocês me ajudem nessa dúvida.

Tenho uma aplicação desktop onde coloquei um JLabel completamente vazio (sem texto e sem ícone) em um JPanel com espaço suficiente para o JLabel mostrando o ícone. Em um botão, criei uma imagem qualquer com o BufferedImage e com createGraphics().

O problema que estou tendo é que, ao aparecer a imagem no JLabel, o JPanel que contém esse JLabel também se redimensiona proporcionalmente ao JLabel, sem aproveitar o espaço disponível (que, por sinal, é mais do que suficiente).

Estou usando o NetBeans 5. Não achei nenhuma propriedade que me ajudasse.

Desde já agradeço!

prq vc nao faz assim:


panelMarca.setSize(new Dimension(100,100));

Porque simplesmente não funciona. Percebi que tem alguma coisa com a ancoragem dos panels da janela. Quando coloco, por exemplo, os dois panels com mesmo tamanho (same size), ocorre isso.
Se eu refizer a janela colocando primeiro o panel com a label da figura e depois os demais panels, ela não redimensiona dessa forma estranha.

Odeio adimitir, mas EU estava certo :lol:
Realmente era um problema de ancoragem. Eu estava preocupado em ancorar o meu JPanel mais interno nas bordas do JPanel mais externo, mas esquecia de ancorar o JPanel mais externo nas bordas do JFrame. Assim, toda vez que o JLabel mudava de tamanho, o JPanel (o mais interno ou o mais externo) “excorregava” para o(s) lado(s) que não estavam ancorados.

Para ancorar no NB5, basta redimensionar o componente de forma que apareça aquela linha pontilhada na borda e soltar. Depois de solto, deve aparecer uma setinha apontando os lados que estão ancorados.

Vou colocar algumas imagens para ficar mais claro.

Espero que ajude a todos que precisarem!!!
:smiley: