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

Windows Forms Discussion :

Fermeture de fenetre/application


Sujet :

Windows Forms

  1. #1
    Membre régulier Avatar de jlvalentin
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 133
    Points : 89
    Points
    89
    Par défaut Fermeture de fenetre/application
    Bonjour..
    J'ai encore besoin de votre aide...
    Bon, voila mon souci. A partir d'une fenetre contenant une liste d'articles, j'ouvre une autre fenetre pour afficher/modifier le détail de cet article.
    Et quand je ferme cette seconde fenetre, mon application se ferme...
    Pourquoi ? Et comment faire pour que la fermeture d'une fenetre ne ferme pas l'appli...

    Détails :
    • Chargement de l'application -> Form : frmMain
    • A partir de frmMain (double click dans la liste des articles), on lance une form -> frmDetail
    • Fermeture de frmDetail ... BOUM, ca ferme tout...


    Je lance frmDetail a partir de frmMain en faisant un
    Je ferme frmDetail en faisant un :
    J'ai modifié aussi les parametres de mon appli afin de lui dire de ne se fermer que lorsque toutes les fenetres sont fermées. Mais ca continue...
    Comment faire ? Je craques un peu là...

    D'avance merci.

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Mars 2008
    Messages : 23
    Points : 19
    Points
    19
    Par défaut
    me.hide() peut-être ?

  3. #3
    Responsable .NET

    Avatar de Hinault Romaric
    Homme Profil pro
    Consultant
    Inscrit en
    Janvier 2007
    Messages
    4 570
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2007
    Messages : 4 570
    Points : 252 372
    Points
    252 372
    Billets dans le blog
    121
    Par défaut
    En fait sa dépend du mode de fermeture de ton programme qui est dans définie dans les propriétés du projet du menu projet. Il existe deux mode de fermeture a savoir, "A la fermeture du formulaire de démarrage" et "A la fermeture du dernier formulaire", par défaut c'est a la fermeture du formulaire de démarrage et je crois que c'est cella qui te cause ce probleme donc modifie juste et met "a la fermeture du dernier formulaire".

    @++
    Vous souhaitez participer aux rubriques .NET ? Contactez-moi

    Si déboguer est l’art de corriger les bugs, alors programmer est l’art d’en faire
    Mon blog, Mes articles, Me suivre sur Twitter
    En posant correctement votre problème, on trouve la moitié de la solution

  4. #4
    Membre régulier Avatar de jlvalentin
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 133
    Points : 89
    Points
    89
    Par défaut
    Merci pour vos réponses, mais ce n'est ni l'un ni l'autre.
    Pour le Me.Hide, vu que ma liste d'article est volumineuse et qu'il est possible d'ouvrir plusieurs articles en parallele, le Me.Hide va vite me remplir la mémoire.

    Pour les options du projet, comme je le disais dans mon premier message, j'ai déjà testé et cela ne marche pas.
    D'ailleurs, comme le premier formulaire de mon projet est frmMain, je ne comprends pas pourquoi le fait de faire un Me.Close sur frmDetail ferme frmMain.

    Ou alors, est-ce que cela signifie que Me.Close porte sur frmMain ?

  5. #5
    Membre régulier Avatar de jlvalentin
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 133
    Points : 89
    Points
    89
    Par défaut
    Bon, alors, je soumets une solution à votre approbation.

    En fait, au lieu d'utiliser Me.Close() (ou Me.Hide() que je ne veux absolument pas afin de ne pas consommer des resources inutilement), j'ai utilisé :
    Et a priori, ca à l'air de fonctionner.
    Mais je n'ai pas forcément compris ce que faisait exactement un Me.Dispose().
    Donc si quelqu'un peut m'éclairer (un lien, une explication), ca serait super.

    D'avance merci.

  6. #6
    Responsable .NET

    Avatar de Hinault Romaric
    Homme Profil pro
    Consultant
    Inscrit en
    Janvier 2007
    Messages
    4 570
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2007
    Messages : 4 570
    Points : 252 372
    Points
    252 372
    Billets dans le blog
    121
    Par défaut
    Si FrMain est un formulaire MDI et est définie comme formulaire de lancement je ne comprend pas pourquoi la fermeture de frmDetail puisse fermer ton application, c'est comme cella que je procède de mon coter et sa marche nickel.

    Me.dispose permet de libérer la mémoire je crois que Me.close inclus Me.dispose.

    @++
    Vous souhaitez participer aux rubriques .NET ? Contactez-moi

    Si déboguer est l’art de corriger les bugs, alors programmer est l’art d’en faire
    Mon blog, Mes articles, Me suivre sur Twitter
    En posant correctement votre problème, on trouve la moitié de la solution

  7. #7
    Membre régulier Avatar de jlvalentin
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 133
    Points : 89
    Points
    89
    Par défaut
    Merci. Je suis bien d'accord avec toi.
    Par contre, je me suis un peu planté dans ma description d'enchainement de fenetre.
    En fait, frmMain est la fenetre principale. Elle ouvre une fenetre Fille appelée frmList qui m'affiche la liste des articles. Et c'est depuis cette fenetre fille que je lance ma fenêtre Detail...
    Donc ca donne :

    frmMain -> frmList -> frmDetail

    Sur frmDetail, j'ai deux boutons, un bouton OK qui enregistre les modifications puis sort de la fenêtre (ferme la fenêtre) et un bouton Cancel qui n'enregistre rien et sort de la fenêtre.
    Mon souci c'est de faire le Close dans frmDetail.

    En effet, si j'ouvre frmDetail en faisant un à partir de frmList et qu'au retour je fais un frmDetail.Close() dans la procédure appelant depuis frmList, ca fonctionne. Mais je ne peux ouvrir qu'une seule fenêtre Detail.
    Donc, je fais, depuis frmList, un . Mais là, si dans frmDetail, je fais un ben, ca ferme mon appli...
    Je débutes en VB.Net, mais ce principe fonctionnait parfaitement dans VB6. Donc je m'interroge....

  8. #8
    Responsable .NET

    Avatar de Hinault Romaric
    Homme Profil pro
    Consultant
    Inscrit en
    Janvier 2007
    Messages
    4 570
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2007
    Messages : 4 570
    Points : 252 372
    Points
    252 372
    Billets dans le blog
    121
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    frmDetail.ShowDialog()
    Ouvre un formulaire modale qui bloque l'accès a d'autre formulaire tant qu'il n'est pas fermer.

    Pour ton problème moi même je sache je ne comprend pas pourquoi sa ne marche pas chez toi. tu ferme ton formulaire dans quel évènement?

    @++
    Vous souhaitez participer aux rubriques .NET ? Contactez-moi

    Si déboguer est l’art de corriger les bugs, alors programmer est l’art d’en faire
    Mon blog, Mes articles, Me suivre sur Twitter
    En posant correctement votre problème, on trouve la moitié de la solution

  9. #9
    Membre régulier Avatar de jesslegende
    Développeur informatique
    Inscrit en
    Août 2009
    Messages
    156
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2009
    Messages : 156
    Points : 102
    Points
    102
    Par défaut
    salut,
    je te propose de recreer ton formulaire frmMain (as new) dans l'événement form.close() de la derniére fenêtre ouverte, aprés tu fais appel à frmMain.
    j'espère que ca t'aidera.

Discussions similaires

  1. fermeture de fenetre
    Par JackNanPie dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 04/01/2005, 14h34
  2. [Event]Annuler la fermeture d'une application
    Par willowII dans le forum Interfaces Graphiques en Java
    Réponses: 3
    Dernier message: 16/11/2004, 09h28
  3. Problème de fermeture de l'application
    Par SkyDev dans le forum Langage
    Réponses: 2
    Dernier message: 16/06/2004, 02h06
  4. [debutant] Fermeture de fenetre
    Par wkd dans le forum Agents de placement/Fenêtres
    Réponses: 26
    Dernier message: 04/06/2004, 17h01
  5. bouton ENTER = fermeture de l'application
    Par bigboomshakala dans le forum MFC
    Réponses: 2
    Dernier message: 10/05/2004, 11h14

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