Preencher JComboBox

3 respostas
K

Pessoal estou tentando preencher uma comboBox com informações do banco mais estou tendo muita dificuldade.

Tenho uma tela de aluno com uma combo de disciplina a qual quero preencher, na classe cursoDAO tenho o seguinte método:

[b]public List listaCurso()

{

List lista = new ArrayList();

Curso novoCurso = new Curso();
try
{
  // Abrindo a conexão com BD.
  Connection conexao = super.abrirConexao();

  // Criando o comando SQL.
  String sql = "select Nome from Curso";
  PreparedStatement comandoSQL = conexao.prepareStatement(sql);

  // Executando o comando SQL.
  ResultSet registros = comandoSQL.executeQuery();

  // Obtendo as informações das colunas do registro.
  while (registros.next())
  {
    novoCurso.setNome(registros.getString("NOME"));
    lista.add(novoCurso.getNome());
    
  }

  // Fechando a conexão.
  registros.close();
  comandoSQL.close();
  conexao.close();
} catch (Exception e)
{
  System.out.println("Erro: " + e.toString());
}

return lista;

}[/b]

na classe alunoControle tento chamar esse método



CursoDAO lista = new CursoDAO();

List listaCurso = lista.listaCurso();

for(int i = 0; i <  listaCurso.getItemCount() ; i++){

alunoFrame.getCampoCurso().addItem(listaCurso.getItem(i));

e após conseguir fazer isso já tenho outra dúvida, como posso na hora de inserir pegar o código do curso para inserir na tabela aluno?

3 Respostas

ViniGodoy

Por favor, leia com atenção a descrição dos fóruns antes de postar. Seu tópico é para o fórum de interface gráfica, não Java Básico. Tópico movido.
Além disso, para formatar seus códigos adequadamente, use a tag code:
http://www.guj.com.br/java/50115-voce-e-novo-no-guj-vai-criar-um-topico-e-colar-seu-codigo-fonte-leia-aqui-antes-por-favor

E qual é o problema com esse código? Dá algum erro?

K

Pessoal consegui preencher mais ao inves de aparecer o nome do está aparecendo o nome do packat + @552dadf (algo paracido com isso), irei postar meu codigo.

// Preenchendo o campo curso.
    CursoDAO CursoDAO = new CursoDAO();
    List<Curso> listaCurso = CursoDAO.recuperarCursos();

    Curso curso = new Curso();
    
   
    alunoFrame.getCampoCurso().removeAllItems();
    alunoFrame.getCampoCurso().addItem(curso);
    
    for (int i = 0; i < listaCurso.size(); i++)
      alunoFrame.getCampoCurso().addItem(listaCurso.get(i));
    
    alunoFrame.getCampoCurso().setEditable(true);
    alunoFrame.getCampoCurso().setSelectedItem(aluno.getCurso()); // Ajustando o curso.
ViniGodoy

Sobrescreva o método toString() da classe Curso.

public class Curso {

  //Seu código da classe Curso aqui

  @Override
  public String toString() {
      return getNome();
  }
}
Criado 2 de julho de 2011
Ultima resposta 3 de jul. de 2011
Respostas 3
Participantes 2