Problemas com DefaultTableModel

1 resposta
J

Galera e que eu preciso ocultar algumas colunas do DefaultTableModel, e não sei como fazer isso,pois a minha pesquisa ela já oculta quando eu clico em pesquisar.
Mas só que eu quero já trazer de inicio as tabelas ocultadas do DefaultTableModel .

Aqui esta meu DefaultTableModel.

DefaultTableModel tmCliente = new DefaultTableModel(null, new String[]{"ID","Nome","Telefone",
    "CPF","Email","Data Nascimento","Observacao","Endereço","Cidade"});

Aqui e meu método que eu já oculto as colunas.

private void mostraPesquisa(){
      while(tmCliente.getRowCount()>0){
         tmCliente.removeRow(0);
      }
      if(contatos.size() == 0){
          JOptionPane.showMessageDialog(null, "Nenhum contato cadastrado");
      }else{
          String[] linha = new String[]{null,null};
                for (int i = 0; i <contatos.size(); i++) {
         tmCliente.addRow(linha);
         tmCliente.setValueAt(contatos.get(i).getCodcliente(), i, 0);
         tmCliente.setValueAt(contatos.get(i).getNome(), i, 1);
         tmCliente.setValueAt(contatos.get(i).getTelefone(), i, 2);
         tmCliente.setValueAt(contatos.get(i).getCpf(), i, 3);
         tmCliente.setValueAt(contatos.get(i).getEmail(), i, 4);
         tmCliente.setValueAt(contatos.get(i).getDatanascimento("dd/MM/yyyy"), i, 5);
         tmCliente.setValueAt(contatos.get(i).getObservacao(), i, 6);
         tmCliente.setValueAt(contatos.get(i).getEndereco().getEndereco(), i, 7);
         tmCliente.setValueAt(contatos.get(i).getEndereco().getCidade(), i, 8);
         
         
         //ocutar Algumas colunas
         
          jTTabela.getColumnModel().getColumn(4).setMinWidth(0);    
          jTTabela.getColumnModel().getColumn(4).setMaxWidth(0);
         
          jTTabela.getColumnModel().getColumn(5).setMinWidth(0);    
          jTTabela.getColumnModel().getColumn(5).setMaxWidth(0);
          
          jTTabela.getColumnModel().getColumn(6).setMinWidth(0);    
          jTTabela.getColumnModel().getColumn(6).setMaxWidth(0);
            
          jTTabela.getColumnModel().getColumn(7).setMinWidth(0);    
          jTTabela.getColumnModel().getColumn(7).setMaxWidth(0);
            
          jTTabela.getColumnModel().getColumn(8).setMinWidth(0);    
          jTTabela.getColumnModel().getColumn(8).setMaxWidth(0);
      
         
                }   
            }
        }   
   }

Fiz algumas pesquisas , achei algumas sobre DefaultTableModel, mas não tinha o que eu queria.
obrigado.

1 Resposta

S

DefaultTableModel é limitado mesmo, pesquise sobre AbstractTableModel e aqui no guj tem esse tópico que pode ajudar.

Criado 8 de julho de 2013
Ultima resposta 8 de jul. de 2013
Respostas 1
Participantes 2