Painel bugado

2 respostas Resolvido
ditocujogy

Toda vez que clico no botão btnNovo, ele adiciona um objeto JPanel à meu outro painel, se tiverem mais que 8 objetos dentro do painel ele aumenta o meu painel para caberem mais.
O problema é que eu criei um método que adiciona vários objetos de uma vez à esse painel, faço isso chamando o btnNovo.doClick(); dentro de um while. Mas ao fazer isso o painel buga e não consigo rolar todo para baixo.

O actionPerformed do btnNovo:

if (e.getSource() == btnNovo){

criaPaineis(new JPanel());

if(pnlSequencia.getComponentCount() > 9){

pnlSequencia.setPreferredSize(new Dimension (500, pnlSequencia.getHeight() + 105));

}

pnlRolagem.revalidate();
o método para adicionar vários de uma vez:

int c = contaChar(codigoDeSalvamento, º);

int p = pnlSequencia.getComponentCount();

while(p < c+1){

btnNovo.doClick();

p++;

}

Já verifiquei tudo… Não tem nada errado, até pq quando eu clico no btnNovo ele funciona normal. Mas nesse metódo o painel “come” os objetos dentro dele. Eu uso JScrollPane.

2 Respostas

staroski
Solucao aceita

Posta o código completo.

Evite chamar o método doClick(), ao invés disso, crie um método que faz o que tem de ser feito e aí no ActionListener do botão você chama esse mesmo método.

ditocujogy

Obrigado, eu resolvi criando uma lógica para alterar manualmente o tamanho do painel depois de ter adicionado todos os objetos.

mas enfim deveria funcionar do outro modo.

Criado 12 de dezembro de 2018
Ultima resposta 12 de dez. de 2018
Respostas 2
Participantes 2