Fórum Arraylist Jcombobox #12328

01/12/2009

0

Dyego, segue o código do arraylist para dares uma olhada. Não esquecendo que estou a usar a arquitetura 3 camadas. Isto está na classe DAO. A ideia é pegar os paises cadastrados no DB e popular o jcombobox.  public ArrayList<Pais> obterListaPaises(){
    // lista todos os paises
    ArrayList<Pais> listaPaises = new ArrayList<Pais>();     Pais p = null;
    Connection conn = Conexao.getConexao();
    try{
      Statement stmt = conn.createStatement();
      String query = "SELECT * FROM paises ORDER BY nome";
      ResultSet rs = stmt.executeQuery(query);       while(rs.next()){
        int idPais = rs.getInt("id");
        String nomePais = rs.getString("nome");
        String nacionalidadePais = rs.getString("nacionalidade");
        p = new Pais(idPais, nomePais, nacionalidadePais);
        listaPaises.add(p);
} } catch(SQLException ex){
      System.out.println("SQLException: " + ex.getMessage());
      System.out.println("SQLState: " + ex.getSQLState());
      System.out.println("VendorError: " + ex.getErrorCode());
    }     return listaPaises;
  }     Na View eu coloquei o seguinte código:   Antes da declaração das variaveis   public void preencherComboBox(){
      // vamos obter a lista de paises já cadastrados
      // no sistema e exibí-los no JComboBox
      for(Pais p: listaPaises){
        cmbPaises.addItem(p);
      }
    }     // como saber se o botão salvarBtn foi clicado?
    public boolean gravar = false;
    public java.util.ArrayList<Pais> listaPaises;
    Ja olhei de tras para frente e de frente para trás não consegui ver erro nenhum. Mas não está populando o combobox.   Será que tem outra forma???   Desde ja agradeço.
Armando Uime

Armando Uime

Responder

Posts

01/12/2009

Henrique Weissmann

Armando,

o seu código está correto. Verifique se não está ocorrendo nenhuma excessão ao fazer a consulta no BD e também se a sequência de execução está correta, isto é, se você de fato está primeiro obtendo a lista de Paises e depois populando o combobox.

Outro ponto importante: o Netbeans costuma vir com o JComboBox já preenchido. Por via das dúvidas, antes de preenche-lo chame o método .removeAllItems() do JComboBox para garantir que ele esteja vazio.
Responder

Gostei + 0

22/12/2009

Devmedia

Armando,
por falta de retorno estamos encerrando o chamado. CASO TENHA DÚVIDAS SOBRE O ASSUNTO AQUI TRATADO, BASTA POSTAR A DUVIDA AQUI MESMO QUE O CONSULTOR VOLTARÁ A LHE ATENDER O SERÁ REABERTO.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar