Dados atualizados estão indo para ultima posição da JTable(TÓPICO FECHADO)

5 respostas
A
Boa tarde galera, sempre quando atualizo os dados, eles vão para a ultima posição da JTable... por que??? Vo postar meus códigos fontes referentes a alteração..Vlw MÉTODO ALTERAR DO DAO
public void altera(Contato contato) throws SQLException{

		Connection conn = Conexao.getConexao();
		String sql = " Update usuario set nome = ? ,idade = ? ,telefone = ? where idusuario = ? ";
		PreparedStatement stmt = conn.prepareStatement(sql);

		// Setar os valores no statemant
		stmt.setString(1, contato.getNome());
		stmt.setString(2, contato.getIdade());
		stmt.setString(3, contato.getTelefone());
		stmt.setInt(4,contato.getIdusuario());

		// Executa o código SQL com os valores setados
		stmt.execute();
		stmt.close();
METODO ALTERAR DA REGRA DE NEGOCIO
public void alterarContato(int idusuario,String nome,String idade,String telefone) throws SQLException{

		Contato cont = new Contato(nome,idade,telefone);
		cont.setIdusuario(idusuario);
		contatoDAO cDAO = new contatoDAO();
		cDAO.altera(cont);
	}
EVENTO DO MOUSE, PARA LISTAR OS DADOS NOS TEXTFIELDS
private void tabelaMouseClicked(java.awt.event.MouseEvent evt) {                                    
       int linha = tabela.getSelectedRow();
       tf_id.setText(tabela.getValueAt(linha, 0).toString());
       tf_nome.setText(tabela.getValueAt(linha, 1).toString());
       tf_idade.setText(tabela.getValueAt(linha, 2).toString());
       tf_telefone.setText(tabela.getValueAt(linha, 3).toString());
    }
BOTAO ALTERAR
private void bt_alterarActionPerformed(java.awt.event.ActionEvent evt) {                                           

             if(evt.getSource() == bt_alterar){
                 ContatoNegocio cont = new ContatoNegocio();
            try {
                cont.alterarContato(Integer.parseInt(tf_id.getText()), tf_nome.getText(), tf_idade.getText(), tf_telefone.getText());
            } catch (SQLException ex) {
                Logger.getLogger(Interface.class.getName()).log(Level.SEVERE, null, ex);
            }
             }

    }
SEMPRE QUE ALTERO OS DADOS DA JTALE, ELES VAO PARA A ULTIMA POSIÇÃO..VLW

5 Respostas

Marky.Vasconcelos

Cade onde voce joga os dados na JTable?

A
Mark_Ameba:
Cade onde voce joga os dados na JTable?
Entao, é o seguinte, eu captiru os dados no evento do botao e jogo nos textfield, ai quando atualiza, para aparecer os dados atualizados tenho que fechar e abrir a aplicação de novo, mas ai quando abro a aplicação os dados atualizados vaum para a ultima posição, eles vaum para a JTable automaticamente.... MÉTODO QUE JOGA NA JTABLE
private void encherTabela() throws SQLException{

        tabela.getColumnModel().getColumn(0).setPreferredWidth(10);
        tabela.getColumnModel().getColumn(1).setPreferredWidth(20);
        tabela.getColumnModel().getColumn(2).setPreferredWidth(30);
        tabela.getColumnModel().getColumn(3).setPreferredWidth(20);
        DefaultTableModel modelo = (DefaultTableModel)tabela.getModel();
        modelo.setRowCount(0);

        ContatoNegocio cont = new ContatoNegocio();
        List<Contato> lista = cont.listarContato();
        for(Contato contato : lista){
            modelo.addRow(new Object[]{contato.getIdusuario(),contato.getNome(),contato.getIdade(),contato.getTelefone()});
        }

    }
ViniGodoy

Fique frio, esse problema não ocorrerá quando você tiver seu próprio TableModel.

A

Certo, acabei de brir um tópico sobre TableModel lá, mas tenham calma por que to começando do zero!!

Marky.Vasconcelos

Tudo bem… voce só nao precisava fazer 15 topicos pra falar sobre JTable, sendo que em todos falamos a mesma coisa.

Criado 12 de março de 2010
Ultima resposta 12 de mar. de 2010
Respostas 5
Participantes 3