Redimensionar automaticamente JPanel[Resolvido]

1 resposta
M

Pessoal, minha dúvida é a seguinte:

Tenho três JPanels dentro de outro JPanel que está como BorderLayout. Eu queria redimensionar o tamanho deles conforme fosse arrastado o mouse, porém não consegui fazer funcionar do jeito que queria. Então testei um código onde toda vez que ele soltasse o botão do mouse ele diminuia 10 da altura de um desses JPanel com o seguinte código:

public void mouseReleased(MouseEvent evt) { panelRedimensionar.setPreferredSize(new Dimension(panelRedimensionar.getWidth() ,panelRedimensionar.getHeight()-10)); panel.repaint(); }

Só que ele não funciona. Ai mudei o setPreferredSize para setSize e diminuiu o tamanho, só que não ajustou os outros JPanels dentro do BorderLayout. Até onde sei, o JPanel definido com Center deveria “pegar” esse espaço e adicionar ao seu tamanho. Só que o que ele fez foi meio que deletar aquele espaço, aparecendo o JPanel que é BorderLayout.

Para ele redimensionar automaticamente em tempo de execução o que eu preciso fazer?

1 Resposta

M

Resolvi o problema, quem se interessar na resposta ai está.

public void mouseReleased(MouseEvent evt) { panelRedimensionar.setPreferredSize(new Dimension(panelRedimensionar.getWidth() ,panelRedimensionar.getHeight()-10)); panel.updateUI(); }

O código acima atualiza os JPanels em tempo real.

Criado 26 de agosto de 2008
Ultima resposta 26 de ago. de 2008
Respostas 1
Participantes 1