Pq meu form abre 2x? problemas trabalhando com 2 classes

seguinte… tenho 2 classes…

formPrincipal.class
Conexao.class

blz…

eu to tentando fazer o seguinte…
no meu formPrincipal…
eu faço uma consulta…

						Conexao c = new Conexao();
	c.Conectar();
						c.Consulta("SELECT * FROM funcionarios","nome");	

blz… a consulta vai ser realizada la no Conexao.class …
queria saber … como faço pra qndo a consulta terminar…
ele retornar o resultado da consulta adicionando os valores numa jList.

eu estou tentando fazer assim oh:

ao enviar a instruçao SQL q eu mostrei acima, ele executa a Consulta q esta no Conexao.class:

public void Consulta(String comando, String campo) {    	
    	try {
    		stm = con.createStatement();
    		rs = stm.executeQuery(comando);
    		try {
    			Vector lstresultado = new Vector(); 
				while (rs.next()) { 
					lstresultado.addElement(rs.getString(campo));
				}
				formPrincipal p = new formPrincipal();
				p.AddLista(lstresultado);
			}
			catch (SQLException f) {
	    		f.printStackTrace();
			}
    	} 
    	catch(SQLException e) {
    		e.printStackTrace();	
    	}
    }

ae qq eu fiz… ao final do while… ele executa o AddLista que esta no formPrincipal.class … que serve pra adicionar os valores no jList.

aki tah o AddLista que fica no formPrincipal.class

	public void AddLista(Vector resultado) {
		jList.setListData(resultado);
	}

soh q o problema eh q qndo mando ele fazer isso q eu quero… ele tah abrindo outro form igual o meu… e ae sim adicionando os valores…

alguem sabe pq?

como posso arrumar isso?

valeu :stuck_out_tongue:

Oi

olhe, isso acontece aqui

            formPrincipal p = new formPrincipal(); 

Tu está criando uma nova instancia da classe formPrincipal… Por isso…

Bom, tu tem que adcionar sem criar uma nova instancia. tu pode fazer de várias formas, deixar a instancia em execuação da classe formPrincipal como static, ou criar um getInstance que retorne this, etc, etc

T+

alguem poderia me dar um ex … de como criar akele AddLista static?

e um exemplo do outro por favor?

valeu :slight_smile:

eu tentei fazer assim oh:

	public static void AddLista(Vector resultado) {
		jList.setListData(resultado);
	}

mas ae ele da esse erro:

Severity Description Resource In Folder Location Creation Time
2 Cannot make a static reference to the non-static field jList formPrincipal.java Posto line 668 20 de Outubro de 2004 13:09:42

qq eu tenho q fazer pra arrumar isso e fazer funcionar?