Partage
  • Partager sur Facebook
  • Partager sur Twitter

[VB]Creation de variables de type form dans un for

Sujet résolu
    20 août 2019 à 9:18:23

    Bonjour,

    Dans le cadre de mon projet sur Visual basic je doit appeller n fois un form que j'ai creé au préalable. Donc j'ai l'idée de creer une variable de type "mon form spécifique" n fois mais je ne savais pas comment faire, en regardant sur différent forum j'ai remarqué que la solution était de creer liste / tableau selon le problème, cependant dans mon cas cela ne fonctionne pas. En effet, ces clones de mon form j'ai besoin de les appeller avec "show" et de les fermer avec "close". Le problème avec une liste et un tableau est que il n'y a pas vraiment de variable nommé a proprement parlé, il y a juste le resultat de ces variables dans chaque élements du tableau / liste, or dans mon cas il me faut explicitement un nom de variables differents pour chaque clone de mon form ainsi créé :

    dim clone1 as new "mon form"

    dim clone2 as new "mon form"

    dim clonen as new "mon form"

    (mais dans un for quoi)

    pour pouvoir les appeller ou les fermer indépendamment. Donc y'aurai t-il un moyen de creer des Noms de variables de type form n fois ?

    Merci de votre aide,

    Edit : c'est bon j'ai trouvé, en fait on peut utiliser une liste mais il faut à chaque fois recréer cette liste si on veut réappeller ces clones (car un clone ne peut pas être réouvert s'il a était déjà fermé)

    Delrieu Thibault

    -
    Edité par ThibaultDelrieu 22 août 2019 à 11:45:00

    • Partager sur Facebook
    • Partager sur Twitter
      30 août 2019 à 14:01:07

      > chaque fois recréer cette liste

      Non.

      Comme vous n'avez besoin que d'un formulaire à la fois, pourquoi ne pas le créer juste avant de l'utiliser ?

      • Partager sur Facebook
      • Partager sur Twitter
      Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.
        30 août 2019 à 14:38:24

        Bonjour,

        Non j'ai besoin de plusieurs formulaire à la fois (et le nombre peut être variables). Le seul moyen que j'ai trouvé pour pouvoir tous les fermer est de les recreer à nouveau dans la liste. Si vous avez une autre solution je suis preneur.

        Cordialement,

        Delrieu Thibault

        • Partager sur Facebook
        • Partager sur Twitter
          30 août 2019 à 15:09:34

          Lors de la création d'une instance de formulaire, vous stockez la référence dans un champ de type List<Form>, via sa méthode Add.

          Quand vous avez besoin de les fermer, vous faites une boucle sur ce champ de type List<Form> (formList dans le code qui suit) et vous appelez la méthode Close sur la variable de boucle :

          for(var form in formList)
          {
              form.Close();
          }



          • Partager sur Facebook
          • Partager sur Twitter
          Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.
            30 août 2019 à 15:58:48

            C'est ce que je fais, mais une fois qu'ils sont fermé il faut recreer la liste car il ne sont plus consideré comme existant. Si je refait un show après les avoir fermé sans recrer la liste sa ne marchera plus. Voila pourquoi je recreer la liste
            • Partager sur Facebook
            • Partager sur Twitter
              30 août 2019 à 16:55:37

              Pourquoi les fermer si c'est pour les recréer ensuite ?

              Autant juste les cacher puis les montrer avec la méthode Hide ou la propriété "Visible".

              https://www.techotopia.com/index.php/Hiding_and_Showing_Forms_in_C_Sharp

              • Partager sur Facebook
              • Partager sur Twitter
              Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.
                2 septembre 2019 à 8:09:37

                il faut les fermer car après recreation ce n'est plus les même. Ce sont des clones d'un form certes, mais selon les circonstances et les conditions il y aura des choses affichés en plus / en moins.Voila pourquoi j'ai besoin de les fermer car quand je les reouvrirais ils ne seront plus exactement les même

                -
                Edité par ThibaultDelrieu 2 septembre 2019 à 8:10:10

                • Partager sur Facebook
                • Partager sur Twitter
                  2 septembre 2019 à 10:29:08

                  Et ?

                  Vous changez l'état des données et le formulaire si adapte, pas besoin de le recréer pour ça.

                  • Partager sur Facebook
                  • Partager sur Twitter
                  Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.
                    2 septembre 2019 à 11:19:12

                    Peut-être effectivement, mais bon cela ferait beaucoup de changement et de rajout de ligne dans mon code pour pas grand chose ^^. Je vais garder ma technique qui marche très bien mais merci de m'avoir éclairé.

                    -
                    Edité par ThibaultDelrieu 2 septembre 2019 à 11:19:23

                    • Partager sur Facebook
                    • Partager sur Twitter
                      2 septembre 2019 à 11:53:44

                      Faites au plus simple, mais ce que vous montrez de votre "technique" ne semble guère la plus simple.
                      • Partager sur Facebook
                      • Partager sur Twitter
                      Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.
                        2 septembre 2019 à 13:32:05

                        en connaisant le code je dirais que c'est au moin la plus courte en terme de ligne de codes.
                        • Partager sur Facebook
                        • Partager sur Twitter
                          2 septembre 2019 à 13:42:20

                          >c'est au moin la plus courte en terme de ligne de codes.

                          C'est très très loin d'être un bon indice.

                          La simplicité, c'est plus la lisibilité que la concision.

                          • Partager sur Facebook
                          • Partager sur Twitter
                          Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.

                          [VB]Creation de variables de type form dans un for

                          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                          • Editeur
                          • Markdown