Liste fichier wxWindows [Résolu]

Messages postés
17
Date d'inscription
dimanche 5 octobre 2003
Dernière intervention
15 juin 2006
- 13 juin 2006 à 15:48 - Dernière réponse :
Messages postés
17
Date d'inscription
dimanche 5 octobre 2003
Dernière intervention
15 juin 2006
- 15 juin 2006 à 10:19
Bonjour,

Je commence à utiliser wxWindows. Le truc que je veux faire c'est sélectionner un répertoire et ensuite lister automatiquement tous les fichiers contenu dans ce répertoire.
Exemple:
C:\repertoire1\
    cam1\
       cam1.txt
    cam2\
       cam2.txt
    etc
Je sélectionne le répertoire C:\repertoire1 et je voudrai récupérer dans wxGrid les chemins de chaque fichier.
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
Messages postés
547
Date d'inscription
mercredi 8 janvier 2003
Dernière intervention
7 octobre 2007
- 15 juin 2006 à 07:59
3
Merci
Bonjour,


pour la dernière question comme je l'ai indiqué précédement il faut
utiliser les fonction membre suivantes : wxFileName::GetPath et
wxFileName::GetName.


wxArrayString files;

wxString name, path;


... // remplissage du tableau de chaine


for (size_t i = 0; i < files.GetCount(); i++)

{

    wxFileName fname(files[i]);

    name = fname.GetName();

   path = fname.GetPath();

   ... // traitement du nom et du chemin du fichier

}


Voilà en gros comment faire, le code ci-dessus n'a pas été testé et peu
contenir des erreurs mais l'idée est là même si certaine adaptation
peuvent être nécessaire, pour cela se référer à l'aide en ligne de
wxWidgets

Cordialement

Fred Cailleau-Lepetit
Soft In The Box
Forum wxWidgets en français

Merci fredcl 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de fredcl
Messages postés
547
Date d'inscription
mercredi 8 janvier 2003
Dernière intervention
7 octobre 2007
- 13 juin 2006 à 16:27
0
Merci
Bonjour,


Je vous conseille de lire l'aide sur les sujets suivants: wxDirTraverser e wxDir.

Puis de vous renseigner sur : wxGrid::SetCellValue, wxFileName::GetPath et wxFileName::GetName.


Une fois tous ces renseignements pris, vous devriez pouvoir réaliser ce que vous décrivez dans votre message.

Si ce n'était pas le cas, reposez une question sur la partie qui vous pose problème.

Cordialement

Fred Cailleau-Lepetit
Soft In The Box
Forum wxWidgets en français
Commenter la réponse de fredcl
Messages postés
17
Date d'inscription
dimanche 5 octobre 2003
Dernière intervention
15 juin 2006
- 14 juin 2006 à 10:30
0
Merci
Merci, j'y arrive grace à ton aide ;-)

Cependant j'ai un souçi qui me gène là. Je travaille avec wxDev-Cpp et je veux créer mon IHM avec l'éditeur. Elle est bien définie de façon à ce que je n'y retouche plus car je sais que cet éditeur efface du code si on modifie des trucs. C'est pour celà que je veux faire mon interface au début une fois pour toute. Cependant, lorsque je veux insérer un wxGrid qui contiendra la liste des fichiers d'un dossier, ben je fais glisser le composant et là, impossible de modifier sa taille, il prend toute la fenètre! C'est la même chose pour les panels! Ya t'il une astuce?
Commenter la réponse de cs_probordelais
Messages postés
17
Date d'inscription
dimanche 5 octobre 2003
Dernière intervention
15 juin 2006
- 14 juin 2006 à 11:26
0
Merci
En fait, j'ai créer un wxPanel (il prend donc toute la fenètre) et à l'intérieur je peux placer mes composants que je peux redimenssionner :-)
Commenter la réponse de cs_probordelais
Messages postés
17
Date d'inscription
dimanche 5 octobre 2003
Dernière intervention
15 juin 2006
- 14 juin 2006 à 15:24
0
Merci
re bonjour,

Bon j'arrive à récupérer les chemins des fichiers. Après celà, je veux afficher le chemin de ce fichier (ex:
c:\rep\fic.txt") dans une case d'un wxGrid et le nom du fichier
(fic.txt) dans une autre case. Les problèmes sont les suivants:
<li>Lorsque le chemin est long, il dépasse la cellule ce qui rend
toutes les cellules d'à coté illisible du fait qu'il y ait le texte par
dessus. Je voudrai que le texte ne dépasse pas.</li><li>De plus, je ne sais pas comment récupérer uniquement le nom du fichier dont le chemin est stocké dans un wxArrayString files</li>
J'espère avoir été clair surtout sur le premier point!
Commenter la réponse de cs_probordelais
Messages postés
17
Date d'inscription
dimanche 5 octobre 2003
Dernière intervention
15 juin 2006
- 15 juin 2006 à 10:03
0
Merci
Merci bien ça marche nickel.

Je récupère bien le nom du fichier dans le wxString mais maintenant je ne voudrai récupérer que la fin.
Mon fichier s'appelle par exemple cam12 et moi je voudrai uniquement récupérer le 12. J'ai essayé avec la fonction strtok mais j'ai un pb de type car elle attend un char* et pas un wxString!
Commenter la réponse de cs_probordelais
Messages postés
17
Date d'inscription
dimanche 5 octobre 2003
Dernière intervention
15 juin 2006
- 15 juin 2006 à 10:19
0
Merci
J'ai trouvé, j'ai fais un num_cam = name.Right(name.Lenght()-3)
Commenter la réponse de cs_probordelais

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.