Qual seria o comando correto ou cast para colocar num Vector um TreeModel
vector.add((DefaultMutableTreeModel)seuModel);
O melhor mesmo é escrever um TreeModel próprio, ao invés de usar esse aí. Já pensou em fazer isso?
Há uma dica de como faze-lo nesse link:
http://www.guj.com.br/posts/list/37821.java#501820
Poise ja usei o cast como voce escreveu e addElement tb mas ambos estao dando problema, o caso e o seguinte to com um jTree que ta com o meu PathRoot (meus arquivos e pastas) eu preciso pegar o TreeMode que ja esta pronto desse jTree pra poder faze alteracoes tipo um insert.
Deu um ClassCastException?
Então, é pq o seu TreeModel não é da classe DefaultMutableTreeModel.
Poise justamente ele esta com TreeMode vou te postar o codigo aqui ae vc intende o que to querendo faze.
Fora o arquivo atachado eu fis esse removeBarra para que os Nodes (pastas e arquivos) ao invez de ficarem com diretorio + arquivo fique apenas com diretorio ou arquivo.
public void removeBarra() {
///
/// Node Root Sem / e root dir
///
Vector node1 = new Vector();
Vector path = new Vector();
int childCont = Variavel.varWindowsModel.getChildCount(new File(String.valueOf(FPrincipal.jCLetra.getSelectedItem())));
File parent = new File(String.valueOf(FPrincipal.jCLetra.getSelectedItem()));
node1.add((DefaultMutableTreeNode)Variavel.varWindowsModel);
for (int i=0;i<childCont;i++) {
String fraze = String.valueOf(Variavel.varWindowsModel.getChild(parent, i));
int count = fraze.length()-1;
String palavra = "";
while (!String.valueOf(fraze.charAt(count)).equals("\\")) {
palavra = fraze.charAt(count) + palavra;
count--;
}
DefaultMutableTreeNode tempNode = new DefaultMutableTreeNode(palavra);
node1.add(tempNode);
}
///
/// Fim Node Root
///
}
Ok… o primeiro passo é seguir a dica ali de cima e fazer seu próprio Model.
Usar o DefaultMutableTreeModel só gera códigos confusos, como esse que você postou. Aliás, seu código ficou ainda mais difícil de ler pq vc não usou as tags code, o que deixa ele sem formatação. Se você ainda não sabe fazer isso, leia esse post:
http://www.guj.com.br/posts/list/50115.java
Finalmente, ao invés do Vector, que é uma classe antiga, que não deve ser usada desde o Java 1.2, use o ArrayList. Usar um ou outro é praticamente a mesma coisa, mas o ArrayList não tem métodos duplicados como “add” e “addElement”. Ele também não é sincronizado, o que garante uma execução mais rápida. Para ver como se usa o ArrayList, leia esse post:
http://www.guj.com.br/posts/list/74068.java#389435
Depois, por favor, ao postar no fórum, deixe o internetquês de lado e use um português um pouco mais formal.