Problemas nos for's e if's

4 respostas
guisantogui
private void tabelaTesteFocusLost(java.awt.event.FocusEvent evt) {                                      
        modelo = (DefaultTableModel) tabelaTeste.getModel();
        try{
            CellEditor ce = tabelaTeste.getCellEditor();
            ce.stopCellEditing();
        }
        catch(NullPointerException npe){
            System.out.println("Ta estourando a nullpointer do cellEditor");
        }

        String parametro1 = "";
        String parametro2 = "";

        for(int i = 0; i < modelo.getRowCount(); i ++){
            for(int j = 0; j < modelo.getColumnCount(); j++){
                //tabelaCopy.setValueAt(dtm.getValueAt(i, j), i, j);
                try {
                    if(!rs.first()){
                        System.out.println("Não há linhas na tabela");
                    }
                    else{
                        rs.first();
                   //     rs.next();

                        if (rs.getObject(1) == modelo.getValueAt(i, 1)) // Aqui é feita a validação pelo codigo na tabela
                            System.out.println("Esta linha já esta na tabela");

                        else if (parametro1.isEmpty())
                            parametro1 = (String) modelo.getValueAt(i, j);

                        else
                            parametro2 = (String) modelo.getValueAt(i, j);
                    }

                    if(!parametro1.isEmpty() && !parametro2.isEmpty()){
                        String add = this.addNoBanco()+parametro1+"', "+"'"+parametro2+"')";
                        gt.adicionaPessoa(add);
                        parametro1 = "";
                    }
                }
                catch (SQLException ex) {
                    Logger.getLogger(TesteFoco.class.getName()).log(Level.SEVERE, null, ex);
                }
            }
        }

        if(tabelaTeste.getValueAt(modelo.getRowCount()-1, 0) != null || tabelaTeste.getValueAt(modelo.getRowCount()-1, 1) != null){
            modelo.addRow(new String[]{});
        }
    }

Olha só gurizada ta funcionando legal o evento de perda de foco, mas na parte que é para adicionar um registro no banco ele simplesmente não faz nada. Não entendi muito bem o debug :? Vou tentar de novo, mas conto com vc’s!

:smiley:

flw!

4 Respostas

Marck

Olá!

Mostra o metodo que addNoBanco!

guisantogui

retorna uma string só pra facilitar um pouco:

public String addNoBanco(){
        return "INSERT INTO teste (Coluna1, Coluna2) values ('";
    }
Marck

Humm tá estranho os nomes dos metodos hein!
E o codigo de adicionaPessoa(add)

Será que não faltou um commit em algum lugar?

guisantogui

Gente consegui fazer adicionar no banco, mas ta ficando mto a loca o troço

ele ta adicionando só na primeira coluna do banco:
tenho este codigo:

private void tabelaTesteFocusLost(java.awt.event.FocusEvent evt) {                                      
        modelo = (DefaultTableModel) tabelaTeste.getModel();
        try{
            CellEditor ce = tabelaTeste.getCellEditor();
            ce.stopCellEditing();
        }
        catch(NullPointerException npe){
            System.out.println("Ta estourando a nullpointer do cellEditor");
        }

        String parametro1 = "";
        String parametro2 = "";

        for(int i = 0; i < modelo.getRowCount(); i ++){
            for(int j = 0; j < modelo.getColumnCount(); j++){
                //tabelaCopy.setValueAt(dtm.getValueAt(i, j), i, j);
                try {
                    if(!rs.first())
                        System.out.println("Não há linhas na tabela");
                    
                    else{
                        rs.first();
                   //     rs.next();

                        if (rs.getObject(1) == modelo.getValueAt(i, 1)) // Aqui é feita a validação pelo codigo na tabela
                            System.out.println("Esta linha já esta na tabela");

                        else if (parametro1.isEmpty())
                            parametro1 = (String) modelo.getValueAt(i, j);

                        else
                            parametro2 = (String) modelo.getValueAt(i, j);
                    }

                    if(!parametro1.isEmpty() || !parametro2.isEmpty()){
                        String add = this.addNoBanco()+parametro1+"', "+"'"+parametro2+"')";
                        gt.adicionaPessoa(add);
                        parametro1 = "";
                        parametro2 = "";
                    }
                }
                
                catch (SQLException ex) {
                    Logger.getLogger(TesteFoco.class.getName()).log(Level.SEVERE, null, ex);
                }
            }
        }

        if(tabelaTeste.getValueAt(modelo.getRowCount()-1, 0) != null || tabelaTeste.getValueAt(modelo.getRowCount()-1, 1) != null){
            modelo.addRow(new String[]{});
        }
    }
Criado 13 de maio de 2010
Ultima resposta 13 de mai. de 2010
Respostas 4
Participantes 2