Les formulaires en VB.NET

gaby10 Messages postés 445 Date d'inscription   Statut Membre Dernière intervention   -  
 Utilisateur anonyme -
Bonjour tout le monde,

Voilà je galère depuis sur un code vb.net.

J'ai deux Forms: form1 et form2.
Dans form1 j'ai un bouton qui me permet de passer ç la form2 en fermant form1.

Dans form1 j'ai mis le code suivant.

Dim maForm As New form2

code du bouton
     Me.close()
     maForm.showDialog()
fin code

A l'exécution je ne vois rien puisque maForm se ferme immédiatement après.
J'ai pensé à mettre cette déclaration dans un module mais jusque là j'ai le même problème.

Merci de me guider.



--
Logiquement, apres le binaire viendra le ternaire.

1 réponse

  1. ghuysmans99 Messages postés 2496 Date d'inscription   Statut Contributeur Dernière intervention   342
     
    Vu que la machine va beaucoup plus vite que son utilisateur (et pis on a pas le choix) on ouvre d'abord l'autre form et puis on ferme l'actuel. Donc :
    Dim maForm As New form2
    code du bouton
         maForm.showDialog()
         Me.close()
    fin code
    0
    1. Utilisateur anonyme
       
      t'as raison sauf que ca marchera pas car close() ferme la fenêtre mais aussi supprime tout les contrôles qui se trouvent dessus et en plus si il s'agit de la fenêtre de demarrage c'est toute l'application qui sera fermer donc il vaut mieux la cacher en utilisant hide() ce qui donnera ceci:

      debut
      me.hide()
      maform.show()
      fin
      0
    2. ghuysmans99 Messages postés 2496 Date d'inscription   Statut Contributeur Dernière intervention   342
       
      Oops j'avais fait une grosse erreur dans mon code :
      '//début 
      Me.Hide 
      Form2.ShowDialog 
      Me.Show 
      '//fin
      0
    3. Utilisateur anonyme
       
      Oops encore une, hide() et show() ont un effet opposé si hide() cache le formulaire show() le montre donc les maitre de cette façon risque de ne pas produire grande chose.
      ca serait corrêcte d'utiliser show() dans un autre formulaire.
      0
    4. ghuysmans99 Messages postés 2496 Date d'inscription   Statut Contributeur Dernière intervention   342
       
      Form.ShowDialog fait de la fenêtre une modale : il attend qu'elle soit fermée pour continuer.
      0
    5. Utilisateur anonyme
       
      ca c'est une trés bonne ruse, chapô
      0