Lista dentro do button?

9 respostas
javinh
Não tô sabendo como mostrar uma lista quando for clicado o botao. Alguém poderia me ajudar??? :oops: o código:
/*
 * Consultar.java
 * 
 * Created on 30/10/2007, 22:12:29
 * 
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */


import java.util.Iterator;
import java.util.List;
import trabalho.Consulta1;
import javax.swing.JOptionPane;
/**
 * @author Administrador
 */
public class Consultar extends javax.swing.JFrame {
       
    public Consultar() {
        
        initComponents();
    }
    
    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    // <editor-fold defaultstate="collapsed" desc=" Código Gerado ">//GEN-BEGIN:initComponents
    private void initComponents() {
        
        jPanel4 = new javax.swing.JPanel();
        grau = new javax.swing.JComboBox();
        jPanel6 = new javax.swing.JPanel();
        jButton1 = new javax.swing.JButton();

        getContentPane().setLayout(new java.awt.GridLayout(6, 1));

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        

        grau.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Consulta1" }));
        jPanel4.add(grau);

        getContentPane().add(jPanel4);

        jButton1.setText(" ok! ");
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });

        jPanel6.add(jButton1);

        getContentPane().add(jPanel6);

        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
               
         if (this.grau.getSelectedIndex() == 0){
        Consulta1 consulta1 = new Consulta1();
       try{
            List lista = consulta1.getLista();
            for(Iterator iter = lista.iterator(); iter.hasNext();){
               grau.addItem(iter.next());
             
            } JOptionPane.showMessageDialog(null,"Consulta 1: " + grau);
               
        }catch (Exception e){
       // TODO Auto-generated catch block
        e.printStackTrace();
          }
         }
         
         
    }    
         //GEN-LAST:event_jButton1ActionPerformed
    
    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new Consultar().setVisible(true);
            }
        });
    }
    
    // Declaração de variáveis - não modifique//GEN-BEGIN:variables
   //private javax.swing.JCheckBox abono;
    private javax.swing.JComboBox grau;
    private javax.swing.JButton jButton1;
    private javax.swing.JPanel jPanel4;
    private javax.swing.JPanel jPanel6;
    
    // Fim da declaração de variáveis//GEN-END:variables
    
}

9 Respostas

Foxlol

Se for essa lista de grau e o conteúdo dela forem Strings, essa alteração no seu método jButton1ActionPerformed deve servir.

String conteudoLista = "";

for(Iterator iter = lista.iterator(); iter.hasNext();){
   grau.addItem(iter.next());
   conteudoLista += iter.next().toString();
}

JOptionPane.showMessageDialog(null,"Consulta 1: " + conteudoLista);

Se não for isso falae.

Abraços.

javinh

Ainda ta dando um erro, nao sei onde é!!! :cry:
Mas obrigada pela ajuda :smiley:

Foxlol

Poste o código fonte novamente e erro que está gerando.

javinh

Um trabalhinho q tô dando, desculpa. É o código que contem gets e sets da tabela unidade que criei no mysql:[/code]
[code]
package trabalho;

/**
*
* @author Administrador
*/
public class Unidade {

private String dcidade;
private int dcodigo;

public Unidade() {
super();
}

public Unidade( String dcidade, int dcodigo )
{
this.dcidade = dcidade;
this.dcodigo= dcodigo;
}

/**
* @return Returns the autor.
*/
public String getDCidade() {
return dcidade;
}
/**
* @param autor The autor to set.
*/
public void setDCidade(String dcidade) {
this.dcidade = dcidade;
}
/**
* @return Returns the preco.
*/
public int getDCodigo() {
return dcodigo;
}
/**
* @param preco The preco to set.
*/
public void setDCodigo(int dcodigo) {
this.dcodigo = dcodigo;
}

}

javinh

O código de conexao nao vou postar pq ele ta conectando blz. :smiley:

javinh

E esse é o código pra fazer a lista de consulta a tabela unidade, eu acho :?:

/*
 * Consulta1.java
 * 
 * Created on 30/10/2007, 22:04:08
 * 
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package trabalho;
import java.sql.*;
import java.awt.*; 
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.PreparedStatement;
import java.util.List;
import java.util.ArrayList;
/**
 *
 * @author Administrador
 */
public class Consulta1 {
 
  
    // apresenta resultados da consulta ResultSet
    @SuppressWarnings("unchecked")
    public List getLista() throws Exception { 
        
        List  list = new ArrayList();
        try {
            
            //pega a conexao e o statement
            Connection con = gConexao.getConnection();
            PreparedStatement stmt = con.prepareStatement("select * from unidade");
            String sql = "select * from unidade";
            // monta e executa consulta 
            ResultSet r = stmt.executeQuery(sql);
	     
           
	           
	    while(r.next()){
                Unidade unidade = new Unidade();
	        unidade.setDCidade(r.getString("dcidade"));
	        unidade.setDCodigo(r.getInt("dcodigo"));
	        list.add(unidade);
	    }
            // fecha conexao com banco de dados
            if(stmt != null)
	    stmt.close();
	    if(con != null)  
	    con.close();
        }catch (Exception e) {
            System.err.println(e);
            e.printStackTrace();
        }
        return list;
            
	}
   }
javinh

E o codigo de interface (main) é esse q ja postei, sao so esses 3. :smiley:

javinh

Precisa mais nao amores, muito obrigada pela ajuda Foxlol, deu pra fazer uma gambiarra q deu certo, valeu!

Foxlol

Eita era pra vc me manda o codigo alterado do jeito que eu te passei hahaha mas se deu certo blz xD

Criado 31 de outubro de 2007
Ultima resposta 1 de nov. de 2007
Respostas 9
Participantes 2