Erro - Botão que não é mostrado

3 respostas
A

Olá Pessoal.

Tenho o seguinte problema: Tenho um painel onde adiciono alguns botões, e num determinado momento a partir de uma Action de um botão eu recrio o Painel, adiciono-o no Frame, e vou adicionando novos botões neste.

O que ocorre é que alguns botões não aparecem e os dois ultimos aparecem normalmente, e mais estranho ainda é que ao digitar qualquer coisa numa JTable esses botões invisiveis tornam-se visiveis.

Alguém ja passou por este problema antes?

Grato a todos.

3 Respostas

neohacker

Código :?: :!:

cracatio

já esperimentou dar um repaint :?:

this.repaint();

:roll: :stuck_out_tongue:

A

sim, depois de adicionar o botão eu chamo o repaint mais ele não funciona.

O código:

import java.awt.FlowLayout;
import java.awt.event.ActionListener;
import java.io.Serializable;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class MyFrame extends JFrame
{
	public static void main(String[] args) {
		MyFrame logger = new MyFrame();
		
		logger.setLocation(50, 50);
		
		logger.setSize( 600, 500 );
		
		logger.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
		
		logger.setVisible(true);
	}
	
	public MyFrame() {
		final JPanel panel = new JPanel();
		panel.setLayout( new FlowLayout() );
		
		JButton button = new JButton("Ação");
		button.addActionListener( new ActionListener(){
			public void actionPerformed(java.awt.event.ActionEvent e) {
				JButton button = new JButton("teste");
				panel.add( button );
				
				button = new JButton("teste");
				panel.add( button );
				
				MyFrame.this.repaint();
				
			};
		} );
		
		panel.add( button );
		setContentPane( panel );
	}
}

este é apenas uma parte do código.

Grato a todos.

Criado 18 de abril de 2007
Ultima resposta 18 de abr. de 2007
Respostas 3
Participantes 3