Je cherche a obtenir la liste des formulaires NON CHARGES=20
(sinon c'est trop facile avec la collection Forms()) dans=20
un projet VB6 pour pouvoir les parcourir et les ouvrir en=20
fonction de leur nom.
J'ai essay=E9 tout un tas de collections sans succ=E8s, cela=20
doit exister mis je tourne autour depuis qq jrs.
En fait je cherche a customiser une application en=20
decrivant dans une table la liste des formulaires=20
accessible en fonction du degr=E9 de securit=E9 et a=20
sauvegarder la taille et l'emplacement de celle ci pour=20
chaque utilisateur.
Je voudrai simplifier le chargement autrement que en=20
faisant un select case sur le nom du formulaire et en=20
programmant en dur chacun des appels.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Guy DETIENNE
Salut ;O)
Voici une réponse que j'avais faite à une question similaire en date du 2003-07-31 :
---------------------------------------------------------------------------- ------------- La question n'est pas si stupide que cela, elle est même dirons-nous très intéressante. D'emblée, je dois dire que je n'ai pas la réponse, mais selon moi, il n'existe peut-être pas de réponse positive.
L'utilisateur d'Access, Excel ou Word te dira qu'il lui est possible d'énumérer les formulaires existants (même non chargés) dans son projet. Et c'est vrai ! Mais les applications conçues à partir de ceux-ci ne sont pas compilées mais encapsulées, donc le code reste interprété . Ces applications ont une description interne des objets existants pour un projet donné , un peu comme les fichiers VBP en VB, ce qui permet donc d' énumérer aisément tout le contenu. Les objets d'Access, Excel et Word n'ont surtout pas à être comparés à VB. Seules les fenêtres ont un handle, pas les autres objets.
En VB, le code est compilé . Donc pour que Windows puisse connaître les formulaires utilisés, ils doivent être instanciés. Car une fenêtre en VB est purement un object instancié à partir d'une classe. Quand les fenêtres sont instanciées, Windows leur attribue un handle unique. Ce handle permettra de les manipuler. Nous pourrons donc connaître via l'API EnumChildWindows les objets appartenant à une fenêtre donnée.
Donc posons-nous la question suivante : comment Windows pourrait-il connaître des objets qui n'existent pas (ou pas encore instanciés) dans une application ?
Car comme nous le savons, dan un projet VB, nous pouvons créer de façon statique des formulaires et tout autre objet, mais nous pouvons aussi les créer dynamiquement via le code, cad une nouvelle instanciation. Donc, impossible de savoir à l'avance ce qui préexiste dans une application. Ca existe peut-être. mais je ne connais pas ! J'attends de voir.. ---------------------------------------------------------------------------- -------------
Tchao
Guy DETIENNE
-- __________________________________ Tchao.net: L'informatique à votre dimension www.tchao.net Pour toute réponse, retirer le .nospam de l'adresse mail ou cliquez ici http://cerbermail.com/?6nQ9U2fpkD
"Laurent Hamon" a écrit dans le message de news:08fc01c3b01a$bcfbe950$ Bonjour,
Je cherche a obtenir la liste des formulaires NON CHARGES (sinon c'est trop facile avec la collection Forms()) dans un projet VB6 pour pouvoir les parcourir et les ouvrir en fonction de leur nom.
J'ai essayé tout un tas de collections sans succès, cela doit exister mis je tourne autour depuis qq jrs.
En fait je cherche a customiser une application en decrivant dans une table la liste des formulaires accessible en fonction du degré de securité et a sauvegarder la taille et l'emplacement de celle ci pour chaque utilisateur.
Je voudrai simplifier le chargement autrement que en faisant un select case sur le nom du formulaire et en programmant en dur chacun des appels.
Merci.
Laurent
Salut ;O)
Voici une réponse que j'avais faite à une question similaire en date du
2003-07-31 :
----------------------------------------------------------------------------
-------------
La question n'est pas si stupide que cela, elle est même
dirons-nous très intéressante.
D'emblée, je dois dire que je n'ai pas la réponse, mais
selon moi, il n'existe peut-être pas de réponse positive.
L'utilisateur d'Access, Excel ou Word te dira qu'il lui
est possible d'énumérer les formulaires existants (même
non chargés) dans son projet. Et c'est vrai ! Mais les
applications conçues à partir de ceux-ci ne sont pas
compilées mais encapsulées, donc le code reste
interprété . Ces applications ont une description interne
des objets existants pour un projet donné , un peu comme
les fichiers VBP en VB, ce qui permet donc d' énumérer
aisément tout le contenu. Les objets d'Access, Excel et
Word n'ont surtout pas à être comparés à VB. Seules les
fenêtres ont un handle, pas les autres objets.
En VB, le code est compilé . Donc pour que Windows puisse
connaître les formulaires utilisés, ils doivent être
instanciés. Car une fenêtre en VB est purement un object
instancié à partir d'une classe. Quand les fenêtres sont
instanciées, Windows leur attribue un handle unique. Ce
handle permettra de les manipuler.
Nous pourrons donc connaître via l'API EnumChildWindows
les objets appartenant à une fenêtre donnée.
Donc posons-nous la question suivante : comment Windows
pourrait-il connaître des objets qui n'existent pas (ou
pas encore instanciés) dans une application ?
Car comme nous le savons, dan un projet VB, nous pouvons
créer de façon statique des formulaires et tout autre
objet, mais nous pouvons aussi les créer dynamiquement via
le code, cad une nouvelle instanciation. Donc, impossible de savoir à
l'avance ce qui
préexiste dans une application. Ca existe peut-être.
mais je ne connais pas ! J'attends de voir..
----------------------------------------------------------------------------
-------------
Tchao
Guy DETIENNE
--
__________________________________
Tchao.net: L'informatique à votre dimension
www.tchao.net
Pour toute réponse, retirer le .nospam de l'adresse mail
ou cliquez ici http://cerbermail.com/?6nQ9U2fpkD
"Laurent Hamon" <Hamonl@hotmail.com> a écrit dans le message de
news:08fc01c3b01a$bcfbe950$3101280a@phx.gbl...
Bonjour,
Je cherche a obtenir la liste des formulaires NON CHARGES
(sinon c'est trop facile avec la collection Forms()) dans
un projet VB6 pour pouvoir les parcourir et les ouvrir en
fonction de leur nom.
J'ai essayé tout un tas de collections sans succès, cela
doit exister mis je tourne autour depuis qq jrs.
En fait je cherche a customiser une application en
decrivant dans une table la liste des formulaires
accessible en fonction du degré de securité et a
sauvegarder la taille et l'emplacement de celle ci pour
chaque utilisateur.
Je voudrai simplifier le chargement autrement que en
faisant un select case sur le nom du formulaire et en
programmant en dur chacun des appels.
Voici une réponse que j'avais faite à une question similaire en date du 2003-07-31 :
---------------------------------------------------------------------------- ------------- La question n'est pas si stupide que cela, elle est même dirons-nous très intéressante. D'emblée, je dois dire que je n'ai pas la réponse, mais selon moi, il n'existe peut-être pas de réponse positive.
L'utilisateur d'Access, Excel ou Word te dira qu'il lui est possible d'énumérer les formulaires existants (même non chargés) dans son projet. Et c'est vrai ! Mais les applications conçues à partir de ceux-ci ne sont pas compilées mais encapsulées, donc le code reste interprété . Ces applications ont une description interne des objets existants pour un projet donné , un peu comme les fichiers VBP en VB, ce qui permet donc d' énumérer aisément tout le contenu. Les objets d'Access, Excel et Word n'ont surtout pas à être comparés à VB. Seules les fenêtres ont un handle, pas les autres objets.
En VB, le code est compilé . Donc pour que Windows puisse connaître les formulaires utilisés, ils doivent être instanciés. Car une fenêtre en VB est purement un object instancié à partir d'une classe. Quand les fenêtres sont instanciées, Windows leur attribue un handle unique. Ce handle permettra de les manipuler. Nous pourrons donc connaître via l'API EnumChildWindows les objets appartenant à une fenêtre donnée.
Donc posons-nous la question suivante : comment Windows pourrait-il connaître des objets qui n'existent pas (ou pas encore instanciés) dans une application ?
Car comme nous le savons, dan un projet VB, nous pouvons créer de façon statique des formulaires et tout autre objet, mais nous pouvons aussi les créer dynamiquement via le code, cad une nouvelle instanciation. Donc, impossible de savoir à l'avance ce qui préexiste dans une application. Ca existe peut-être. mais je ne connais pas ! J'attends de voir.. ---------------------------------------------------------------------------- -------------
Tchao
Guy DETIENNE
-- __________________________________ Tchao.net: L'informatique à votre dimension www.tchao.net Pour toute réponse, retirer le .nospam de l'adresse mail ou cliquez ici http://cerbermail.com/?6nQ9U2fpkD
"Laurent Hamon" a écrit dans le message de news:08fc01c3b01a$bcfbe950$ Bonjour,
Je cherche a obtenir la liste des formulaires NON CHARGES (sinon c'est trop facile avec la collection Forms()) dans un projet VB6 pour pouvoir les parcourir et les ouvrir en fonction de leur nom.
J'ai essayé tout un tas de collections sans succès, cela doit exister mis je tourne autour depuis qq jrs.
En fait je cherche a customiser une application en decrivant dans une table la liste des formulaires accessible en fonction du degré de securité et a sauvegarder la taille et l'emplacement de celle ci pour chaque utilisateur.
Je voudrai simplifier le chargement autrement que en faisant un select case sur le nom du formulaire et en programmant en dur chacun des appels.