IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

[SWING] composant jouant le role d'un explorer ?!


Sujet :

AWT/Swing Java

  1. #1
    Membre régulier Avatar de kha_yassine
    Inscrit en
    Juin 2007
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 126
    Points : 76
    Points
    76
    Par défaut [SWING] composant jouant le role d'un explorer ?!
    Salut tout le monde,

    Est se qu'il pourait y avoir des projets (des composants) en SWING qui jouent le role d'un simple explorer,

    Un peu prèt du FileChooser et du FolderChooser, mais pas en forme d'arbre

    Just la partie droite de cet exemple :



    Et merci beaucoup

  2. #2
    Membre actif Avatar de jibbi
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    165
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 165
    Points : 205
    Points
    205
    Par défaut
    Salut

    je n'en connais pas, mais tu pourrais créer un tel composant avec un JTextPane

  3. #3
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,


    Pourquoi un composant texte !?

    C'est une liste d'éléments donc pour moi le choix le plus simple serait une JList :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    	File dir = ...
     
    	// On crée la JList associé à un tableau de fichier :
    	JList list = new JList(dir.listFiles());
    	// On utilise l'affichage en colonne :
    	list.setLayoutOrientation(JList.HORIZONTAL_WRAP);
    	// Astuce : On ne force pas l'affichage de ligne
    	// (sinon cela génère un scroll horizontal) :
    	list.setVisibleRowCount(0);
    	// Enfin on lui associe un renderer qui affichera l'icône + le nom :
    	list.setCellRenderer(new FileListCellRenderer());
    Bien sûr il faut le renderer qui va bien et qui affichera le nom et l'icone associé au fichier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    class FileListCellRenderer extends DefaultListCellRenderer {
     
    	private final FileSystemView view = FileSystemView.getFileSystemView();
     
    	@Override
    	public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
    		// On appelle la version parente qui gère les options de bases
    		// (couleur selected/normal/focus)
    		super.getListCellRendererComponent(list, null, index, isSelected, cellHasFocus);
     
    		// On récupère l'objet File de la liste :
    		File file = (File) value;
    		// On lui associe une icone :
    		setIcon(this.view.getSystemIcon(file));
    		// Et un nom (cette méthode renvoi des nom amélioré pour les
    		// fichiers spéciaux comme le bureau, la corbeille, etc...)
    		setText(this.view.getSystemDisplayName(file));
     
    		return this;		
    	}
    }
    Bien sûr ce code ne gère pas les déplacements dans les dossiers/sous-dossiers (et dans ce cas il faudra gérer un ListModel spécifique).


    Le seule problème c'est que l'icône renvoyer est au format 16x16 et qu'il n'y a pas de moyen standard pour l'obtenir dans une taille plus grande
    Il me semble toutefois que JDIC permette d'obtenir l'icone dans n'importe quelle taille...

    a++

  4. #4
    Membre régulier Avatar de kha_yassine
    Inscrit en
    Juin 2007
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 126
    Points : 76
    Points
    76
    Par défaut
    Merci beaucoup,

    Oui c'est ca se que je voulait


+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 13/11/2014, 11h09
  2. [Swing] Composant JTextField dans une JTable
    Par stc074 dans le forum Composants
    Réponses: 1
    Dernier message: 16/03/2011, 15h18
  3. [Joomla!] Étoiles pour voter du composant Seyret non visibles sur Internet Explorer
    Par filiplarlibe dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 06/09/2009, 18h24
  4. [Swing] Composant editeur XML
    Par Hikage dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 01/10/2007, 07h29
  5. [Swing] Composants 'fantômes'
    Par dk dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 18/09/2007, 16h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo