OVH Cloud OVH Cloud

Comment appeler une procédure privé d'une autre form

3 réponses
Avatar
Denis P
Bonjour tout le monde,

Voici ma question. Est-il possible de faire exécuter une procédure dans
Form1 par exemple à partir de Form2 ?

Je vais vous expliquer tout de même ce que je cherche à obtenir, car
peut-être il y a-t-il une méthode différente et plus efficace d'obtenir le
même résultat.

Donc j'ai 2 forms que je dois remplir pour enregistrer des informations sur
un employé. Dans la première form, j'entre une série d'informations
personnelles sur l'employé. Une fois ces entrées effectuées, je passe à la
2ème form où là j'entre des renseignements professionnelles. Je n'ai pas
mis tout sur la même form simplement pour une question d'esthétique car la
form serait trop surchargée à mon sens. Alors ce que je veux obtenir, c'est
qu'après avoir rempli Form1, au lieu d'enregistrer immédiatement les entrées
dans ma BD, je veux simplement cacher cette form et afficher Form2. Une
fois Form2 complétée, alors je veux enregistrer d'abord les entrées de
Form1, en appelant une procédure de cette form, et ensuite les entrées de
Form2.

Ou, ce qui serait encore mieux, parvenir à enregistrer les 2 forms en même
temps, car j'ai des données sur les 2 forms qui vont dans la même table dans
certains cas. Là, évidemment je pourrais aller chercher le contenu de
chaque contrôle de Form1 dans ma procédure d'enregistrement de Form2, mais
je recontre un autre problème. Puis-je récupérer le contenu des variables
de Form1 pour les enregistrer dans Form2 ?

Je vois donc 2 façons de procéder pour le moment.
1. Faire exécuter ma procédure d'enregistrement de Form1 à partir de Form2
2. Enregistrer les entrées de Form1 lors de la procédure d'enregistrement de
Form2

Donc dans le premier cas, puis-je appeler une procédure privée d'une autre
form ?
Dans l'autre, puis-je appeler des variables privées d'une autre form?

Les variables que je dois utiliser, sont en fait des tableaux de variables
qui contiennent l'ID de chaque entrée dans des ComboBox.

Alors je suis ouvert à toutes solutions ou suggestions.

Merci à l'avance de vos toujours préciauses réponses.

Denis P

3 réponses

Avatar
François Picalausa
Hello,

pourquoi ne pas simplement utiliser un contrôle de type tabstrip pour avoir
deux pages sur la même form?
Sinon, en utilisant des procédures Public ou Friend au lieu de Private, tu
pourra accdéderà la procédure.
Lire la section de l'aide concernant la portée pour plus d'information.

--
François Picalausa (MVP VB)
http://faq.vb.free.fr --- http://msdn.microsoft.com
http://apisvb.europe.webmatrixhosting.net

"Denis P" a écrit dans le message
de news:
Est-il possible de faire exécuter une procédure
dans Form1 par exemple à partir de Form2 ?

Je vais vous expliquer tout de même ce que je cherche à obtenir, car
peut-être il y a-t-il une méthode différente et plus efficace
d'obtenir le même résultat.

Donc j'ai 2 forms que je dois remplir pour enregistrer des
informations sur un employé. Dans la première form, j'entre une
série d'informations personnelles sur l'employé. Une fois ces
entrées effectuées, je passe à la 2ème form où là j'entre des
renseignements professionnelles. Je n'ai pas mis tout sur la même
form simplement pour une question d'esthétique car la form serait
trop surchargée à mon sens. Alors ce que je veux obtenir, c'est
qu'après avoir rempli Form1, au lieu d'enregistrer immédiatement les
entrées dans ma BD, je veux simplement cacher cette form et afficher
Form2. Une fois Form2 complétée, alors je veux enregistrer d'abord
les entrées de Form1, en appelant une procédure de cette form, et
ensuite les entrées de Form2.

Ou, ce qui serait encore mieux, parvenir à enregistrer les 2 forms en
même temps, car j'ai des données sur les 2 forms qui vont dans la
même table dans certains cas. Là, évidemment je pourrais aller
chercher le contenu de chaque contrôle de Form1 dans ma procédure
d'enregistrement de Form2, mais je recontre un autre problème.
Puis-je récupérer le contenu des variables de Form1 pour les
enregistrer dans Form2 ?

Je vois donc 2 façons de procéder pour le moment.
1. Faire exécuter ma procédure d'enregistrement de Form1 à partir de
Form2
2. Enregistrer les entrées de Form1 lors de la procédure
d'enregistrement de Form2

Donc dans le premier cas, puis-je appeler une procédure privée d'une
autre form ?
Dans l'autre, puis-je appeler des variables privées d'une autre form?

Les variables que je dois utiliser, sont en fait des tableaux de
variables qui contiennent l'ID de chaque entrée dans des ComboBox.


Avatar
ng
Salut,

Ou même des Frame/PictureBox sans bords avec un bouton Suivant par exemple ?

--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
http://apisvb.europe.webmatrixhosting.net/



François Picalausa a écrit :

Hello,

pourquoi ne pas simplement utiliser un contrôle de type tabstrip pour
avoir deux pages sur la même form?
Sinon, en utilisant des procédures Public ou Friend au lieu de
Private, tu pourra accdéderà la procédure.
Lire la section de l'aide concernant la portée pour plus
d'information.


"Denis P" a écrit dans le message
de news:
Est-il possible de faire exécuter une procédure
dans Form1 par exemple à partir de Form2 ?

Je vais vous expliquer tout de même ce que je cherche à obtenir, car
peut-être il y a-t-il une méthode différente et plus efficace
d'obtenir le même résultat.

Donc j'ai 2 forms que je dois remplir pour enregistrer des
informations sur un employé. Dans la première form, j'entre une
série d'informations personnelles sur l'employé. Une fois ces
entrées effectuées, je passe à la 2ème form où là j'entre des
renseignements professionnelles. Je n'ai pas mis tout sur la même
form simplement pour une question d'esthétique car la form serait
trop surchargée à mon sens. Alors ce que je veux obtenir, c'est
qu'après avoir rempli Form1, au lieu d'enregistrer immédiatement les
entrées dans ma BD, je veux simplement cacher cette form et afficher
Form2. Une fois Form2 complétée, alors je veux enregistrer d'abord
les entrées de Form1, en appelant une procédure de cette form, et
ensuite les entrées de Form2.

Ou, ce qui serait encore mieux, parvenir à enregistrer les 2 forms en
même temps, car j'ai des données sur les 2 forms qui vont dans la
même table dans certains cas. Là, évidemment je pourrais aller
chercher le contenu de chaque contrôle de Form1 dans ma procédure
d'enregistrement de Form2, mais je recontre un autre problème.
Puis-je récupérer le contenu des variables de Form1 pour les
enregistrer dans Form2 ?

Je vois donc 2 façons de procéder pour le moment.
1. Faire exécuter ma procédure d'enregistrement de Form1 à partir de
Form2
2. Enregistrer les entrées de Form1 lors de la procédure
d'enregistrement de Form2

Donc dans le premier cas, puis-je appeler une procédure privée d'une
autre form ?
Dans l'autre, puis-je appeler des variables privées d'une autre form?

Les variables que je dois utiliser, sont en fait des tableaux de
variables qui contiennent l'ID de chaque entrée dans des ComboBox.




Avatar
Denis P
Merci de vos réponses François et Nicolas. Comme je dis toujours, c'est
toujours quand c'est le plus simple qu'on y pense pas. J'étais parti avec
l'idée de fonctionner avec 2 forms, mais vos suggestions sont excellentes et
je vais les mettre en pratique.

Merci encore des conseils

Denis P

"François Picalausa" a écrit dans le message de
news:Oeahf%
Hello,

pourquoi ne pas simplement utiliser un contrôle de type tabstrip pour


avoir
deux pages sur la même form?
Sinon, en utilisant des procédures Public ou Friend au lieu de Private, tu
pourra accdéderà la procédure.
Lire la section de l'aide concernant la portée pour plus d'information.

--
François Picalausa (MVP VB)
http://faq.vb.free.fr --- http://msdn.microsoft.com
http://apisvb.europe.webmatrixhosting.net

"Denis P" a écrit dans le message
de news:
> Est-il possible de faire exécuter une procédure
> dans Form1 par exemple à partir de Form2 ?
>
> Je vais vous expliquer tout de même ce que je cherche à obtenir, car
> peut-être il y a-t-il une méthode différente et plus efficace
> d'obtenir le même résultat.
>
> Donc j'ai 2 forms que je dois remplir pour enregistrer des
> informations sur un employé. Dans la première form, j'entre une
> série d'informations personnelles sur l'employé. Une fois ces
> entrées effectuées, je passe à la 2ème form où là j'entre des
> renseignements professionnelles. Je n'ai pas mis tout sur la même
> form simplement pour une question d'esthétique car la form serait
> trop surchargée à mon sens. Alors ce que je veux obtenir, c'est
> qu'après avoir rempli Form1, au lieu d'enregistrer immédiatement les
> entrées dans ma BD, je veux simplement cacher cette form et afficher
> Form2. Une fois Form2 complétée, alors je veux enregistrer d'abord
> les entrées de Form1, en appelant une procédure de cette form, et
> ensuite les entrées de Form2.
>
> Ou, ce qui serait encore mieux, parvenir à enregistrer les 2 forms en
> même temps, car j'ai des données sur les 2 forms qui vont dans la
> même table dans certains cas. Là, évidemment je pourrais aller
> chercher le contenu de chaque contrôle de Form1 dans ma procédure
> d'enregistrement de Form2, mais je recontre un autre problème.
> Puis-je récupérer le contenu des variables de Form1 pour les
> enregistrer dans Form2 ?
>
> Je vois donc 2 façons de procéder pour le moment.
> 1. Faire exécuter ma procédure d'enregistrement de Form1 à partir de
> Form2
> 2. Enregistrer les entrées de Form1 lors de la procédure
> d'enregistrement de Form2
>
> Donc dans le premier cas, puis-je appeler une procédure privée d'une
> autre form ?
> Dans l'autre, puis-je appeler des variables privées d'une autre form?
>
> Les variables que je dois utiliser, sont en fait des tableaux de
> variables qui contiennent l'ID de chaque entrée dans des ComboBox.