VB.NET 2003 - Form

Résolu
Signaler
Messages postés
47
Date d'inscription
mardi 6 décembre 2005
Statut
Membre
Dernière intervention
18 mai 2007
-
Messages postés
47
Date d'inscription
mardi 6 décembre 2005
Statut
Membre
Dernière intervention
18 mai 2007
-
Bonjour à tous,

Voilà mon problème :

En VB.NET il faut déclarer des instances (très lourd...) je l'ai fait pour afficher une nouvelle form, ça marche.
Mais le problème c'est qu'à partir de cette nouvelle form, je ne peux plus retourner dans l'autre...
Le seul moyen que je pense avoir trouvé c'est de créer dès le début une nouvelle form d'accueil puis à partir de celle-ci d'appeler la 2ème. Mais c'est lourd quand même...

Y a-t-il une méthode ???

Franchement je préfèrais VB 6 au moins on avait accès à tout tout le temps...là ça ressemble trop à du C...
Tout comme le semi abandon du dataenvironement...je trouve pourtant ça super pratique.

Merci d'avance pour toutes vos suggestions.

A+

2 réponses

Messages postés
17
Date d'inscription
vendredi 27 février 2004
Statut
Membre
Dernière intervention
16 avril 2006

Bonjour
Déja je doit t'avertir que j'ai du mal a utiliser les textbox du forum je m'en excuse !:P
Je crois comprendre ton problème en effet c'était plus simple sur VB 6.0 mais tu verra tu t'y fait assez vite au net.
Donc voici comment procèder:
Tu étais sur la bonne voie en effet tu peux créée une form que tu appelera démarrage qui a la rigueur pourra effectuer toutes les vérification si tu n'en a aucune elle paraitera comme invisible.
Donc une fois cette form créée tu met en code dessu:


Private
Sub Démarrage_Activated(
ByVal sender
As
Object,
ByVal e
As System.EventArgs)
Handles
MyBase.Activated


Me.Hide()



Dim maform1
As
New Form1


maform1.Show()



End
Sub

Voila pour la première partie. Ensuite pour naviguer entre tes prochaines form il y a deux cas de figure et tu verra que la page de demarrage n'est pas forcément nécessaire:

Soit tu as une form principal c'est a dire que c par la que tout va se passer auquel cas tu n'aura pas besoin de form de demarrage je t'explique:
Appui sur un bouton qui déclenche une autre form:

Dim maform2
As
New Form2


maform1.Showdialog

Et la tu verra que lorsque ta form2 sera afficher il sera impossible de revenir sur la form 1 qui est derrière tant que la form2 n'est pas fermer (me.close)

Si ce n'est pas le cas et que tu veux absolument que la form 1 soit masquer lorsque tu affiche ta form2 la tu as forcément besoin d'une page de démarrage pour que ton programme reste ouvert

Appui sur un bouton qui déclenche une autre form:
Me.close

Dim maform2
As
New Form2


maform1.Showdialog


Tu pourra faire le test si tu n'a pas de page de demarrage ton programme ce ferme.
Aussi fait bien attention sur ta form1 il faut que tu est une variable integer exple a pour dire si lorsque tu ferme la fenetre le prog doit s'arreter ou il doit continuer car en effet si tu ferme ta fenetre sans mettre de condition sur form1.close etc... le programme restera ouvert sur la page de demarrage masqué donc voila mon conseil tu prend une variable 'a' qui passe a 1 lorsque ta form ce ferme pour passer a une autre form et que lorsque ta form se load et s'active elle passe a 0
ensuite sur les condition de ta form losque qu'elle se ferme (closing) tu met:

If a = 0 then end
et sur tes boutons n'oublie pas de mettre a = 1 avant le me.close
Voila je pense que c'est tout si tu as d'autre question tu peux les poser de plus j'ignore si ma solution est la meilleurs car je suis pas un expert j'apprend tout seul je suis disons que novice.
Si vous avez des solutions plus simple n'hésiter pas .
J'éspère que ma réponse sera claire car je suis pas très bon "prof " :P

@++

Vincent ;)
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 109 internautes nous ont dit merci ce mois-ci

Messages postés
47
Date d'inscription
mardi 6 décembre 2005
Statut
Membre
Dernière intervention
18 mai 2007

Finalement, j'ai créer 2 form d'accueil dont 1 (celle par défaut) que je n'utilise pas, comme ça je travaille sur 2 "variables" (puisque maintenant les foms sont des variables de type Form)?

Merci de ta réponse. ;-)