Explorateur fichiers (JTree, JComboBox)

terminagroo Messages postés 10 Date d'inscription mardi 15 juin 2004 Statut Membre Dernière intervention 6 mars 2008 - 22 févr. 2005 à 14:13
nataS22 Messages postés 66 Date d'inscription jeudi 24 juin 2004 Statut Membre Dernière intervention 28 février 2005 - 22 févr. 2005 à 15:58
Bonjour,
Voilà après multiples tentatives j'ai enfin réussi à avoir une arborescence de fichiers (sous forme d'arbre) et aussi une combobox avec les lecteurs principaux (style barre d'adresse sous windows). Mais maintenant je voudrais faire le lien entre les deux, c'est-à-dire que lorsque je sélectionnne un lecteur dans ma combobox le même lecteur soit sélectionné dans mon arborescence et vice-versa. Mais pour ça je n'arrive pas à sélectionner dans mon JTree le fichier.
J'aimerais aussi savoir si quelqu'un sait comment faire pour ajouter dans la barre d'adresse le chemin du fichier sélectionné sans être obligé de rajouter un item à ma combobox.
Merci d'avance

Terminagroo

1 réponse

nataS22 Messages postés 66 Date d'inscription jeudi 24 juin 2004 Statut Membre Dernière intervention 28 février 2005
22 févr. 2005 à 15:58
Pour faire fonctionner la combo avec la tree tu peux par exemple utiliser un ActionListenner :



tu ajoute implements ActionListenner à la déclaration de ta classe :



public Class Classe implements ActionListenner {



};



dans le constructeur tu met :



combo.setActionCommand ( "Selection" );

combo.addActionListenner ( this );



et pour finir tu créé la méthode :



// écouteur d'événements dans le cas des actions sur les boutons ou sur les comboBox.

public void actionPerformed(ActionEvent e) {



if ( e.getActionCommand() == "Selection" ){



et tu rempli ta treeView en lui disant que ta node racine est :



combo.getModel().getSelectedItem ().toString().



----------------------------------

Pour passer de la tree à la combo tu dois récupérer la séléction :



Ajoute à ta classe TreeSelectionListener :



Public Class Classe implements TreeSelectionListener {



};



Ensuite tu créé la méthode :



public void valueChanged ( TreeSelectionEvent e ) {

DefaultMutableTreeNode node = (DefaultMutableTreeNode)



arborescence.getArborescence().getLastSelectedPathComponent();



if ( node == null ) return;

combo.setSelectedIndex ( rechercherIndexListeCombo ( node.toString() ) );



}



la fonction rechercherIndexListeCombo ( String nom
) est à développer en fonction de la liste que tu passe à ta
combo.



J'espère que tu pourras avancer un peu avec ça.



Je n'ai pas très bien compris ta dernière question mais tu peux récupèrer le chemin complet dans la tree en récupérant :



String chemin = new String ( tree.getAnchorSelectionPath().toString());



ou un truc comme ca.




nataS
0
Rejoignez-nous