JTree

1 resposta
charleston10

Gente estou lendo vários tópicos aqui no guj e pesquisando no google também,
mas ainda nao consegui entender em como alimentar um JTree com os dados da minha tabela.

O que pretendo fazer é bem simples, pegar os dados da minha tabela e colocar em um JTree com checkbox
É uma tabela de computadores, entao vao ter PC1, PC2, PC3, PC4 assim vai…

Na arvore vai mostrar todos os pc, e o usuario vai poder escolher… apos isso, vou criar um metodo onde verifico
todos os itens selecionados e guardo em algum lugar…

Como fazer isso? Ou mais especifico como alimentar um JTree com dados de uma tabela?

:slight_smile:

1 Resposta

charleston10

Gente consegui.. vlw

private void listarPCs(JTree arvore){

    //criando uma raíz para a arvore
    DefaultMutableTreeNode raiz = new DefaultMutableTreeNode("Computadores");

    //criando compatibilidade da raiz defaultmutable para treemodel
    DefaultTreeModel treeModel = new DefaultTreeModel(raiz);

    Banco.sSQL = "SELECT * FROM COMPUTADORES";

       try{
           Banco.sta = Banco.cnn.createStatement(Banco.res.TYPE_SCROLL_INSENSITIVE,Banco.res.CONCUR_READ_ONLY);
           Banco.res = Banco.sta.executeQuery(Banco.sSQL);

           while(Banco.res.next()){
               raiz.add(new DefaultMutableTreeNode(Banco.res.getInt("PC")));
           }

       }catch(Exception e){
           JOptionPane.showMessageDialog(rootPane, e);
       }  
    
    //formatando a arvore para receber os dados
    arvore.setModel(treeModel);
}

Sem o banco de dados

private void listarPCs(JTree arvore){

    //criando uma raíz para a arvore
    DefaultMutableTreeNode raiz = new DefaultMutableTreeNode("Computadores");

    //criando compatibilidade da raiz defaultmutable para treemodel
    DefaultTreeModel treeModel = new DefaultTreeModel(raiz);

    //adicionando conteúdo aos nó
   raiz.add(new DefaultMutableTreeNode("a"));
    raiz.add(new DefaultMutableTreeNode("b"));
    
    //formatando a arvore para receber os dados
    arvore.setModel(treeModel);
}

;]

Criado 2 de agosto de 2012
Ultima resposta 2 de ago. de 2012
Respostas 1
Participantes 1