fzampa
Novembro 15, 2004, 9:10pm
#1
Pessoal,
tenho um painel aonde vou adicionando JLabels em tempo de execução…
acontece que toda vez que adiciono um JLabel ele nao aparece até que eu maximize ou redimensione o JFrame.
Como fazer para poder resenhar o JFrame (ou o JPanel ou o JLabel) para que ele apareca sem ter que redimensionar???
Obrigado…
Daqui a pouco me transformo em Forum Spammer só mandando perguntas… 8)
Estranho, sua tela deveria se repintar, creio eu.
Senão, chama o método repaint().
fzampa
Novembro 15, 2004, 11:07pm
#3
Deixa eu explicar:
Utilizo o Sun One (Net Beans) para modelagem das telas.
Esse JLabel é uma “exceção”, pq é o único que vou adicionando…
O código de adição segue:
JLabel textoComp = new JLabel("Meu JLabel");
jPanel00_00.add(textoComp);
textoComp.repaint();
jPanel00_00.repaint();
//nenhum dos dois faz aparecer...
//se eu fizer pack(); ele refaz a tela toda mas não fica bom, pq
//perde o tamanho original.
textoComp.addMouseListener(new MouseAdapter()
{
public void mouseClicked(MouseEvent event)
{
System.out.println("Clicou no label 00:00");
}
});
fzampa
Novembro 15, 2004, 11:28pm
#4
Consegui!
jPanel00_00.revalidate();
Alguem sabe o que é revalidate() ???
fzampa
Novembro 16, 2004, 12:37am
#6
Validation will occur after all currently pending events have been dispatched.
This method will automatically be called on this component when a property value changes such that size, location, or internal layout of this component has been affected.
Porque então no meu caso não era automaticamente chamado???
Aqui falou que as interfaces AWT não são automáticas e Swing são? ou foi o contrário?
Pq então o meu javax.swing.JLabel não foi?
Valeu…
Por isso repito: Estranho!
velo
Novembro 16, 2004, 10:27am
#8
[quote=fzampa]Pessoal,
tenho um painel aonde vou adicionando JLabels em tempo de execução…
acontece que toda vez que adiciono um JLabel ele nao aparece até que eu maximize ou redimensione o JFrame.
Como fazer para poder resenhar o JFrame (ou o JPanel ou o JLabel) para que ele apareca sem ter que redimensionar???
Obrigado…
Daqui a pouco me transformo em Forum Spammer só mandando perguntas… 8)
[/quote]
Voce tambem pode usar o metodo show() da JFrame!!
VELO
fzampa
Novembro 16, 2004, 11:09am
#9
Agora testei e o show() tb funcionou, mas o revalidate() é mais indicado.
Obrigado pessoal.