Adicionar e remover Panels em tempo de execução?

Em tempo de execução, tem como eu adicionar um painel, utilizando getContentPane.add(Panel1) e removê-lo utilizando o remove, só que fazendo isso várias vezes? tipo, atribuindo isso a um botão?

Fiz uns testes, mas não consegui, creio que eu esteja fazendo algo errado…alguém sabe se isso é possível?

Valeu! 8)

Amigo,

Para esse tipo de operação em GUI vc deve utilizar um Runnable para tomar conta desse tipo de ação para q não haja problemas.

Esse Runnable pode ser um Thread comum que faz isso, ou mais fácil ainda seria criar um inner runnable soh pra isso


//seu código

SwingUtilities.invokeLater ( 
        new Runnable()
         {
             public void run()
               {
                   método para mudar seu layout aki
                }
         }
  );

Espero ter ajudado

[]'s

tipo, só por curiosidade… o que você rpetende fazer removendo o panel?
dependendo do que vc pretende fazer, pode usar o card layout para mostrar ou esconder panels…

[quote=Luiz_Gustavo]tipo, só por curiosidade… o que você rpetende fazer removendo o panel?
dependendo do que vc pretende fazer, pode usar o card layout para mostrar ou esconder panels…[/quote]

Tipo, eu pretento remover e adicionar novamente, porque não to conseguindo fazer um refresh, atualizar os campos de meu formulário…então pensei que removendo e adicionando novamente, jogando os novos dados daria certo…

Valeu!

Paulinho, talvez vc naum esteja conseguindo atualizar sua tela pela motivo q eu citei, vc precisa de um runnable para tal.

Tente criar esse Runnable q eu te indiquei e me diga se funciona

[]'s

[quote=GraveDigger]Paulinho, talvez vc naum esteja conseguindo atualizar sua tela pela motivo q eu citei, vc precisa de um runnable para tal.

Tente criar esse Runnable q eu te indiquei e me diga se funciona

[]'s[/quote]

Cara, pra te falar a verdade, eu não entendi direito este método que vc quer que eu implemente…

Ele seria tipo o refresh dos campos (JTextField) de meu panel?

Valeu!

[quote=paulinhohd][quote=Luiz_Gustavo]tipo, só por curiosidade… o que você rpetende fazer removendo o panel?
dependendo do que vc pretende fazer, pode usar o card layout para mostrar ou esconder panels…[/quote]

Tipo, eu pretento remover e adicionar novamente, porque não to conseguindo fazer um refresh, atualizar os campos de meu formulário…então pensei que removendo e adicionando novamente, jogando os novos dados daria certo…

Valeu![/quote]

Colega, seria só para atualizar os dados nos campos do formulário?

[quote=paulinhohd][quote=GraveDigger]Paulinho, talvez vc naum esteja conseguindo atualizar sua tela pela motivo q eu citei, vc precisa de um runnable para tal.

Tente criar esse Runnable q eu te indiquei e me diga se funciona

[]'s[/quote]

Cara, pra te falar a verdade, eu não entendi direito este método que vc quer que eu implemente…

Ele seria tipo o refresh dos campos (JTextField) de meu panel?

Valeu![/quote]

Exatamente :smiley:

faça um teste exatamente como eu passei ali pra vc e me diga c funcionou ok?

[]'s

Sim, isso mesmo…

[quote=GraveDigger]Exatamente :smiley:

faça um teste exatamente como eu passei ali pra vc e me diga c funcionou ok?

[]'s[/quote]

Onde vc colocou:SwingUtilities.invokeLater ( new Runnable() { public void run() { método para mudar seu layout aki } } );

método para mudar seu layout aki - É onde eu coloco meu Panel, adiciono ele? Pois pra ser mais específico, não são vários Panels, por enquanto é apenas um…

Um panel de cadastro de cliente, onde tem os campos: Razão socila, CNPJ, IE, etc…só que quando incluo um, funciona normal, porém se tentar incluir outro logo em seguida, ele não aceita os valores que eu digito e considera como null…Entendeu?

Valeu! 8)