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

VB 6 et antérieur Discussion :

[VB6]Récupérer les classes d'un projet


Sujet :

VB 6 et antérieur

  1. #1
    Rédacteur

    [VB6]Récupérer les classes d'un projet
    Bonsoir

    Est-il possible de récupérer dans une liste les classes affichées dans l'explorateur d'objets pour un projet donné? Si oui, comment?

    Merci

  2. #2
    Inactif  
    Je veux bien chercher mais ai besoin de précisions :

    Cette "récup" doit-elle être faite au stade de développement (là, ce doit être possible) ou d'exécution par l'utilisateur final (pas par le bouton run) (et là, ce devrait être difficile sinon impossible) ??

  3. #3
    Rédacteur

    Merci
    Mon propos est de pouvoir recenser les forms présentes dans une application, un peu comme on le ferait en parcourant la collection Forms qui ne prend malheureusement en compte que les formulaires chargés.

  4. #4
    Inactif  
    Je vais donc essayer mais note une différence importante entre ton 1er message (recensemment de toutes les classes) et ton second (recensement des seuls Forms)

    Qu'en est-il ?

  5. #5
    Rédacteur

    Oui. Mais en arrière pensée, cela risque de m'être très utile pour autre chose que les forms. Ceci étant, restons au niveau Forms. Et de toute façon, il me semble que si on peut récupéter les classes des forms, on pourra récupéréer d'autres types de classe, non?
    En tout cas merci.

  6. #6
    Inactif  
    Bonjour Jacma,


    J'ai cherché pendant des heures pour, à chaque tentative, aboutir à la même situation que celle du "chien qui se mord la queue"...

    Je n'ai dans ces conditions qu'un subterfuge à te proposer (ce n'est pas élégant, je sais, mais...) :

    Tu connais forcément les "forms" de ton projet donc :

    tu ajoutes une listbox totofrm avec la propriété invisible

    A l'événement "activate" de la 1ère form chargée, :
    1) tu charges toutes les autres forms
    2) tu les enregistres dans ta liste totofrm par le code habituel :


    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
          Dim I
          totofrm.Clear
          For I = 0 To Forms.Count - 1
            totofrm.AddItem Forms(I).Name
          Next I

    3) tu décharges toutes les forms autres que celle(s) devant restée(s) chargée(s)

    Tu disposeras ainsi, tout au long du runtime, d'une liste complète des forms de ton projet.

    Je regrette de ne pas avoir mieux à t'offrir, mais VB tient bien cachée la gestion de son "repository"

  7. #7
    Rédacteur

    Merci.

    J'étais arrivé aux mêmes conclusions.

###raw>template_hook.ano_emploi###