Menu.Hide();

Résolu
aminegalai Messages postés 28 Date d'inscription dimanche 2 novembre 2008 Statut Membre Dernière intervention 19 septembre 2009 - 2 avril 2009 à 07:52
krimog Messages postés 1860 Date d'inscription lundi 28 novembre 2005 Statut Membre Dernière intervention 14 février 2015 - 29 avril 2009 à 12:39
bonjours ....
j'ai 2 form la 1ère authentification des utilisateur et la 2ème c'est pour le menu
après avoir saisir mot de passe je clique sur la bouton Valider et si valide je veux appelé la form menu
frm_menu menu = new frm_menu();
menu.show()

la 2ème forme s'affiche mais la 1ère form reste affiche qu'elle est l'instruction pour fermer la 1ère form ?
j'ai essayé avec menu.Hide(); mais lorsque je ferme l'interface menu ne se ferme pas et reste en mode Debug comment faire pour faire fermer la interface authentification et lorsque je ferme l'interface menu le programme s'arrête????

merciiiiiiiiiiiiiiii

/*
j=2;
for (i=0; i <j ; i++)
{
Console.WriteLine("Merciiiiiii");
j=i+1;
}

*/

9 réponses

cs_Malkuth Messages postés 268 Date d'inscription samedi 22 février 2003 Statut Membre Dernière intervention 24 avril 2013 4
2 avril 2009 à 13:43
ceci doit fonctionner

private void btn_Se_Connecter_Click(object sender, EventArgs e)
{
      frm_02_menu_principal menu = new frm_02_menu_principal();

      this.Close();
      menu.ShowDialog();
}

ou sinon

private void btn_Se_Connecter_Click(object sender, EventArgs e)

{

      frm_02_menu_principal menu = new frm_02_menu_principal();



      this.hide();

      menu.ShowDialog();



      this.Close();

}
titeoe Messages postés 433 Date d'inscription samedi 26 avril 2003 Statut Membre Dernière intervention 4 décembre 2009 1
2 avril 2009 à 08:45
Bonjour,

Essais "this.Close();" juste avant d'ouvrir menu_form.
krimog Messages postés 1860 Date d'inscription lundi 28 novembre 2005 Statut Membre Dernière intervention 14 février 2015 49
2 avril 2009 à 10:58
Salut.
La méthode Hide() cache la fenêtre, mais ne la ferme pas. Donc c'est normal que ton programme continue à s'exécuter. Comme le dit Titeoe, la méthode Close() te permettra d'avoir ce que tu souhaites. (Cependant, il n'est pas obligatoire de l'appeler avant d'ouvrir l'autre, puisque Show() n'est pas bloquant).

En ce qui concerne ta signature, si j'ai bien regardé, ça n'affiche ton texte qu'une seule fois. C'est tordu comme code. J'aime bien :)

Krimog :
while (!succeed = try()) ;
aminegalai Messages postés 28 Date d'inscription dimanche 2 novembre 2008 Statut Membre Dernière intervention 19 septembre 2009
2 avril 2009 à 11:45
dites svp est ce c'est juste ou non
--------------------------------------------------------
private void btn_Se_Connecter_Click(object sender, EventArgs e)
        {
          
            frm_02_menu_principal menu = new frm_02_menu_principal();

            menu.Show();
            this.Hide();
            //this.Close();
        }
----------------------------------------------------------
private void frm_02_menu_principal_FormClosed(object sender, FormClosedEventArgs e)
        {
            Application.Exit();
        }
----------------------------------------------------
est ce que ce code impose un problème à la lourdeur du mémoir ?????
/*
j=2;
for (i=0; i <j ; i++)
{
Console.WriteLine("Merciiiiiii");
j=i+1;
}

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
krimog Messages postés 1860 Date d'inscription lundi 28 novembre 2005 Statut Membre Dernière intervention 14 février 2015 49
2 avril 2009 à 12:12
Est-ce que ça fonctionne, oui (si tu n'oublies pas de rattacher ta fonction "frm_02_menu_principal_FormClosed" à l'événement).
Est-ce que c'est propre, absolument pas...

Pourquoi ne fais-tu pas juste
private void btn_Se_Connecter_Click(object sender, EventArgs e)
{
      frm_02_menu_principal menu = new frm_02_menu_principal();
      menu.Show();
      this.Close();
}

Krimog :
while (!succeed = try()) ;
aminegalai Messages postés 28 Date d'inscription dimanche 2 novembre 2008 Statut Membre Dernière intervention 19 septembre 2009
2 avril 2009 à 12:21
j'ai essayé avant d'envoyé le derniers message mais ca ne marche pas
il affiche la form menu pour une seconde puis il ferme l'application directement

frm_02_menu_principal menu = new frm_02_menu_principal();
menu.Show();
this.Close();
 mais le code de mon derniers message ca marche mais je sais pas est ce qu'il impose de problème à la lourdeur du mémoir du pc ou de l'application ?????

/*
j=2;
for (i=0; i <j ; i++)
{
Console.WriteLine("Merciiiiiii");
j=i+1;
}
aminegalai Messages postés 28 Date d'inscription dimanche 2 novembre 2008 Statut Membre Dernière intervention 19 septembre 2009
3 avril 2009 à 04:03
Merci [../auteur/MALKUTH/56982.aspx Malkuth]
la première solution ne marche pas et la deuxième est efficace

/*
j=2;
for (i=0; i <j ; i++)
{
Console.WriteLine("Merciiiiiii");
j=i+1;
}
cs_technicienne Messages postés 28 Date d'inscription lundi 27 avril 2009 Statut Membre Dernière intervention 25 mai 2010
29 avril 2009 à 12:34
salut tout le monde

Même cette solution ne marche pas sur mon code

controleur

c =
new
controleur();

this.Hide();c.ShowDialog();

this.Close();

merci d'avance
krimog Messages postés 1860 Date d'inscription lundi 28 novembre 2005 Statut Membre Dernière intervention 14 février 2015 49
29 avril 2009 à 12:39
Salut

ça signifie quoi "ne marche pas" ?

Krimog : while (!(succeed = try())) ;
- NON, "LE BAR" n'est PAS un langage de programmation ! -
Rejoignez-nous