IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Fermeture userforme et messageBox


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2011
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2011
    Messages : 12
    Par défaut Fermeture userforme et messageBox
    Bonjour à tous,

    Je rencontre un problème lorsque je souhaite fermer mes userformes ou mes messagebox.

    En effet, j'ai plusieurs fenêtre dans mon prjet visual avec un boton suivant et un bouton précédent, c'est ce dernier qui me pose problème. Lorsque je clique dessus toutes les pages précédentes se ferment. j'utilise ce code

    Me.close()

    dans la fonction bouton. Je souhaiterais simplement fermer la page pour revenir à la précédente mais je reviens directement à la page d'accueil.

    Idem lorsque j'utilise un messagebox, une fois que l'on a cliqué sur ok pour fermer la fenêtre toutes les pages se ferment sauf la page initial d'accueil.

    Quelqu'un aurait-il une idée?

    Merci d'avance pour vos réponses.

    P.S. certaines messagebox fonctionnent correctement alors qu elle me semble codé sur le mm model.

  2. #2
    Membre très actif
    Profil pro
    Inscrit en
    Août 2005
    Messages
    483
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 483
    Par défaut
    Bonjour

    Je pense qu'il faut utiliser la propriété visible du formulaire.

    Quand tu veux l'afficher tu verifies si ton formulaire n'existe pas déjà en mémoire et tu l'affiches en passant à true ca propriété visible, à false pour le masquer et passer à un autre formulaire.

    Je sais pas si ca t'aidera

    EDIT : Je viens de me rappeler que ce type de programmation s'appelle MDI
    http://plasserre.developpez.com/cour...ws-forms1#LX-D


    ++

  3. #3
    Membre éclairé Avatar de Chapeau_Bas
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2010
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Décembre 2010
    Messages : 44
    Par défaut
    Bonjour,

    Utilises-tu les propriétés MDI?
    Ta feuille principale doit être en "UseMdiContainer = True".
    Ensuite, quand tu crée une feuille, elle doit être enfant de cette feuille principale:

    Dim MdiChild as new "Feuille" (Nom de ta feuille)
    MDIChild.MdiParent = Me
    MDIChild.Show()
    Ainsi, quand tu utilises la propriété me.close, seul la feuille enfant instancié et fermé.

    En espérant t'avoir aider.
    Bonne journée.

    Ps: Attention a la différence entre .show et .showdialog aussi...

  4. #4
    Membre très actif
    Profil pro
    Inscrit en
    Août 2005
    Messages
    483
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 483
    Par défaut
    plop

    ah bah le temps que j'edite mon poste (s'etait la pause cafe) chapeau_bas t'as indiqué la méthodologie

    ++

  5. #5
    Membre habitué
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2011
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2011
    Messages : 12
    Par défaut
    Dsl mais ça ne fonctionne pas.

    Je travail sous visual basic express 2005 pour info.

    Par ailleurs, est ce que je devrais ajouter un intitulé en en-tête comme un Imports?

  6. #6
    Membre éclairé Avatar de Chapeau_Bas
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2010
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Décembre 2010
    Messages : 44
    Par défaut
    Hum....

    Disons que Frm_Princ est ta feuille principale.
    Quand tu cliques sur Suivant de Frm_Princ, sa t'ouvres une nouvelle feuille. (Nommé Frm_1)

    Dans ta fonction btn.clic tu dois avoir:
    Dim Mdi1 as new Frm_1
    MDI1.MdiParent = Me
    MDI1.Show()
    Ensuite, sur Frm_1 tu as deux boutons: Précédent et Suivant.
    Suivant te permet d'ouvrir Frm_2
    Dans précédent tu met :
    Me.Close
    Dans Suivant:
    Dim Mdi2 as new Frm_2
    MDI2.MdiParent = Frm_Princ
    MDI2.Show()
    Et ainsi de suite. Normalement, sa devrais fonctionner Il devrait te fermer que la feuille spécifié. (En ayant spécifié que Frm_princ est ta feuille principale par la propriété IisMdiContainer...)

    De quel intitulé ou en-tête parles tu?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Fermeture UserForm bloque Excell
    Par Olivierporcinet dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 23/05/2013, 14h15
  2. Débutant : ouverture et fermeture UserForm
    Par zblook dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 30/11/2007, 14h20
  3. [VBA-E]Bloquer la fermeture d'un userform
    Par Lexot2 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 11/10/2006, 17h11
  4. messagebox pdt la fermeture
    Par didi59650 dans le forum Delphi
    Réponses: 6
    Dernier message: 05/06/2006, 23h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo