le 05-31-2012 11:55 AM
Bonjour tout le monde!
Je m'arrache les cheveux depuis un petit moment sur un truc qui me semble tout bête et qui pourtant me donne pas mal de fil à retordre... Je compte sur votre infini sagesse pour m'éclairer!
Voic la situation :
Mon VI est un générateur de phrases unique, je m'en sert pour générer des fichiers textes pouvant contenir jusqu'à 15,000 phrases et j'organise ces fichiers textes en fonction de leur utilité/sujet. Par exemple, je peux créer une série de 10 fichiers texte contenant chacun 15,000 phrases et chaque fichier porte sur un fruit : Un pour les pommes, un pour les bananes, un pour les poires, etc. Je pourrais tout simplement faire la gestion de ces fichiers à l'extérieur de LabVIEW, mais je désire obtenir une solution intégrée.
L'objectif est d'obtenir un mini-explorateur local pour visualiser ces fichiers dans LabVIEW. Par exemple, la structure générale de mon dossier pourrait ressembler à sa :
C:/MonSuperVI/generateur.vi
C:/MonSuperVI/sousvi.vi
C:/MonSuperVI/Listes/
C:/MonSuperVI/Listes/Fruits
C:/MonSuperVI/Listes/Fruits/fruitsgeneriques.txt
C:/MonSuperVI/Listes/Fruits/Poire
C:/MonSuperVI/Listes/Fruits/Poire/Poire-1.txt
C:/MonSuperVI/Listes/Fruits/Poire/Poire-2.txt
C:/MonSuperVI/Listes/Fruits/Poire/Poire-3.txt
C:/MonSuperVI/Listes/Fruits/Banane
C:/MonSuperVI/Listes/Fruits/Banane/Banane-1.txt
C:/MonSuperVI/Listes/Fruits/Pomme
C:/MonSuperVI/Listes/Animaux
C:/MonSuperVI/Listes/Animaux/Chien
C:/MonSuperVI/Listes/Animaux/Chat
C:/MonSuperVI/Listes/Metiers
...
Mon VI contient un onglet "Liste" et c'est dans cet onglet qu'on retrouverai toute la gestion des listes. Le fait est qu'avant de gérer quoi que ce soit il faut être capable de trouver les fichiers! J'ai essayer en utilisant les contrôle de type "Tree". Je suis capable d'obtenir les chemins de tout les dossiers et les fichiers mais sa ne marche pas vraiment comme je le souhaiterais... Voici deux scénario du fonctionnement désiré
Scénario A
Deux fenêtres sont utilisé, l'une pour les dossiers, l'autre pour les fichiers. Au lancement, la première fenêtre afficherait
-Fruits
-Animaux
-Métiers
La deuxième fenêtre serait vide (pas de fichier dans le dossier "Liste"). En cliquant sur "Fruits", la première fenêtre devient :
-Poire
-Banane
-Pomme
La deuxième fenêtre afficherait alors "Fruitsgeneriques.txt". Si on clique sur Poire, la première fenêtre n'affiche que "Poire" (pas de sous-dossier) et la deuxième "Poire-1.txt", "Poire-2.txt", etc.
Un bouton serait utilisé pour revenir au dossier précédent.
Scénario B
L'utilisation du contrôle de type Tree permettrait selon moi de tout combiner dans la même fenêtre. Le système d'indentation/child permet d'avoir l'architecture complete du dossier "Liste" dans la première colonne. En fonction du dossier selectionner dans la Col1, les fichiers et sous dossiers apparaitrait dans la Col2 et ainsi de suite. Je suis arrivé à la première étape mais je suis completement bloqué après (voir VI joint).
Voila j'espère que j'ai bien expliquer ce petit projet! Merci en avance pour votre temps et votre aide, c'est immensément apprécié!!
-Bastien
le
06-01-2012
04:53 AM
- dernière modification le
04-16-2025
06:20 PM
par
Content Cleaner
Salut,
Je n'ai pas encore pris le temps de regarder ton code (je le ferai dimanche si il pleut ), en attendant je te donne un exemple pour populer un tree. J'adore utiliser les trees, je trouve que c'est un super outils donc je te conseillerais de prendre cette option.
Le code ci-joint un un plugin pour le scripting sandbox, qui lui même est un plugin pour le RCF.
Voilà un lien pour montrer ce que fais le plugin.
Je me rends compte que je balance pas mal de liens vers des trucs pas forcéement évident donc n'hésite pas à poser des questions. ah, d'ailleurs il faut aussi avoir installé les librairies OpenG
We have two ears and one mouth so that we can listen twice as much as we speak.
Epictetus
le 06-04-2012 10:21 AM
Bonjour TiTou!
Merci beaucoup de votre réponse. J'ai installé le Run-Time LV2011, le VI Package Manager, les librairies OpenG, le plugin de scripting sandbox et j'ai essayé un peu de comprendre comment me servir de tout ça mais je vais t'avouer que je suis un peu perdu.
J'ai bien quelques VI OpenG pour lister un repertoire mais je vais me retrouver avec le même problème qu'au départ. Quant au plugin de scripting sandbox je ne suis pas encore trop sur de savoir ni comment il fonctionne, ni à quoi il sert (j'ai été incapable de trouver le VI qui liste les sous-vi dans un Tree comme dans la vidéo).
Une petite lanterne me serait bien utile!
Cordialement,
Bastien
le
06-05-2012
12:17 AM
- dernière modification le
04-16-2025
06:20 PM
par
Content Cleaner
@TBM wrote:
Merci beaucoup de votre réponse. J'ai installé le Run-Time LV2011, le VI Package Manager, les librairies OpenG, le plugin de scripting sandbox et j'ai essayé un peu de comprendre comment me servir de tout ça mais je vais t'avouer que je suis un peu perdu.
Je comprends, il faut un peu de temps pour que tout se mette en place
As tu installé le RCF (Right Clic Framework), il s'installe depuis le VIPM et est nécessaire pour faire tourner le scripting sandbox ; ce dernier utile que dans des cas assez particulier, à l'origine je voulais faire un plugin pour le RCF mais j'ai trouvé que c'était bcp plus simple de faire un plugin pour le scripting sandbox.
Enfin... ceci était une petite parenthèse, revenons à ton problème.
Je ne sais pas exactement ce que tu veux faire comme "explorateur de fichier", je voulais simplement de te montrer qu'un tree control me semble particulièrement bien adapté, parfois c'est un peu déroutant à utiliser au début mais une fois qu'on a bien compris le fonctionnement on avance vite.
Ne passe pas trop de temps sur les exemples ci-dessus, essaie d'utiliser un tree, de publier dedans ta structure de dossier/fichier.
A quel point es tu bloqué, qu'est ce que tu veux faire exactement?
We have two ears and one mouth so that we can listen twice as much as we speak.
Epictetus
le 06-11-2012 08:49 AM
Bonjour TiTou,
En fait, j'arrive à peupler mon Tree, cette partie est relativement simple. Là où je bloque, c'est quand je veux déclencher un événement lorsqu'on clique sur un des éléments du tree.
Par exemple, lorsque je clique sur l'élément "Fruits" dans ma 1ère colonne, j'aimerais que "Fruitsgeneriques.txt" apparaisse dans la colonne à coté (la 2ième colonne). L'étape suivante serait d'extraire la valeur de l'élément sous forme de string pour reconstruire le chemin d'accès au fichier (un petit bouton "Ouvrir" par exemple qui serait grisé sauf si l'élément du tree selectionné est un fichier).
Merci encore pour ton aide!
Cordialement,
Bastien
le 06-11-2012 09:15 AM
Comme ça :
We have two ears and one mouth so that we can listen twice as much as we speak.
Epictetus