Fechar um JPanel com um botao

2 respostas
dicabeca

Bom dia ai pessoal, preciso de uma ajuda simples como faco para fechar um JPanel usando um botao, usei DISPOSE() e nao funcionou meu codigo esta aki

import java.awt.*;
 import javax.swing.*;
 import java.awt.event.*;
 
 public class Vertice extends JFrame
	{ 
	  	private JTextField TXT_Ponto,TXT_Hab;
	  	private JLabel l1,l2;
	  	private JButton b1,b2;
	  	public grafo g;
	  	
	  	public Vertice()
	  	{
	  		super("Adicionamento de Vertices");
	  		setLayout(new BorderLayout());		
			JPanel panelAddVert = new JPanel();
			
			panelAddVert.setLayout(null);
				
			TXT_Ponto = new JTextField();
			panelAddVert.add(TXT_Ponto);
			//jtf.setDocument(new LimitDocument(1)); //somente 1 caracter   
				 
			TXT_Hab	= new JTextField();
			panelAddVert.add(TXT_Hab);
			
			l1 = new JLabel("Cidade:");
			panelAddVert.add(l1);
			
			l2 = new JLabel("Habitantes:");
			panelAddVert.add(l2);
			
			b1 = new JButton("Inserir");
			panelAddVert.add(b1);
			
			b2 = new JButton("Cancelar");
			panelAddVert.add(b2);	
			
			add(panelAddVert);
			
			l1.setBounds(5,35,50,20);
			TXT_Ponto.setBounds(60,35,50,20);
			l2.setBounds(150,35,100,20);
			TXT_Hab.setBounds(220,35,50,20);
			b1.setBounds(50,100,100,20);
			b2.setBounds(170,100,100,20);
			
			inseriVertice acao = new inseriVertice();
			b1.addActionListener(acao);
			b2.addActionListener(acao);
	    }
	    
	    private class inseriVertice implements ActionListener
	    {	
	    	grafo g = new grafo();
	    	public void actionPerformed(ActionEvent evento)
	    	{
	    		if(evento.getSource() == b1)
	    			g.AdicionaVertice(TXT_Ponto.getText(),Double.parseDouble(TXT_Hab.getText()));
	    		if(evento.getSource() == b2)
	    			panelAddVert.DISPOSE();
	    	}
	    }
}

2 Respostas

T

vc tá dando um dispose num jpanel

tenta fazer o seguinte

na sua classe privada na ação do botão fechar coloque o codigo assim

nomeDaClasse.this.dispose();

o q significa que vc vai estar pegando o próprio objeto instanciado que a chamou, que é uma instancia de Jframe, pois a sua classe herda dela, e irá executar o método dispose, fechando sua janela. espero q de certo abs

dicabeca

vlw brow obrigadao

Criado 24 de maio de 2007
Ultima resposta 24 de mai. de 2007
Respostas 2
Participantes 2