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

C++Builder Discussion :

[debutant]Différence OnClose/OnDestroy


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mai 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Mai 2006
    Messages : 20
    Par défaut [debutant]Différence OnClose/OnDestroy
    J'ai pas bien compris la différence et dans quel cas utiliser l'un plutôt que l'autre.
    Si quelqu'un pouvait m'éclairer là-dessus. Merci.

  2. #2
    Membre Expert
    Avatar de bakaneko
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 268
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 268
    Par défaut
    L'évenement OnClose se produit quand la fiche ne devient plus visible (changement de la visibilité, réduction dans la barre des taches).
    L'évènement OnDestroy se produit quand on détruit la fiche (delete de la fiche, fermeture complète de l'application)

  3. #3
    Membre expérimenté
    Avatar de lanonyme
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    229
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 229
    Par défaut
    Bonjour,

    Citation Envoyé par bakaneko
    L'évenement OnClose se produit quand la fiche ne devient plus visible (changement de la visibilité, réduction dans la barre des taches).
    Ca serai pas plutôt OnHide() ?

    lanonyme

  4. #4
    Membre averti

    Inscrit en
    Août 2002
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 24
    Par défaut
    Salut lanonyme,

    En fait, si j'ai bien compris la doc:
    - Pour OnHide, dès que ta fiche est cachée, ton code se trouvant dans l'évènement va être executé.
    - Pour OnClose, c'est un peu la même chose mais avec un paramètre qui fait la différence (TCloseAction &Action). Ce paramètre te permet de savoir de quelle manière ta fiche est cachée.

    Si tu n'as pas besoin de savoir comment est caché ta fiche autant utiliser OnHide au lieu du OnClose

  5. #5
    Membre expérimenté
    Avatar de lanonyme
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    229
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 229
    Par défaut
    Merci MiGoN pour ses precisions

    En effet, l'evenement OnHide() correspondant au changement d'etat de la propriété Visible de la Form

    J'ai parler trop vite

    lanonyme

  6. #6
    Membre expérimenté Avatar de Mattetfamilly
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    182
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 182
    Par défaut
    Citation Envoyé par MiGoN
    - Pour OnHide, dès que ta fiche est cachée, ton code se trouvant dans l'évènement va être executé.
    - Pour OnClose, c'est un peu la même chose mais avec un paramètre qui fait la différence (TCloseAction &Action). Ce paramètre te permet de savoir de quelle manière ta fiche est cachée.
    Attention, ce paramètre action te permet aussi te permet de contrôler la fermeture de la fenêtre tu peux dans cet évènement tester des variables / conditions et empêcher la fermeture de la fenêtre.

    Le OnHide se déclenche quand la fenêtre n'est plus active: cachée par une autre fenêtre de l'application ou encore d''une application externe.
    OnClose se déclenche quand tu fermes la fenêtre au moyen de la croix de la barre de titre ou du code Close() ou bien si la fenêtre est modale, au moyen d'un bouton modal.
    La fenêtre peut être réouverture après ce type de fermeture, sauf si c'est la fenêtre principale de l'application auquel cas, l'application s'arrête.

    L'évènement OnDestroy se déclenche quand tu détruits la fenêtre. Cet évènement dans deux situations particulières: soit à la fermeture de l'application car avant de s'arrêter, l'application libère la mémoire associée à chaque éléments dont la fenêtre lorsque du détruits toi même par code de façon dynamique la fenêtre. (Ceci est une opération assez avancée...)
    Après cette opération, la fenêtre ne peut plus être réouverte, il faut la recréer dynamiquement (si l'application n'est pas arrêtée bien entendu)

    Mattetfamilly.

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

Discussions similaires

  1. [debutant] différence servlet/taglib
    Par noname_971 dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 09/08/2010, 17h29
  2. Réponses: 3
    Dernier message: 04/11/2007, 22h31
  3. [debutant] quel est la différence entre .pl et .pm?
    Par pierrot10 dans le forum Langage
    Réponses: 4
    Dernier message: 17/07/2006, 12h10
  4. [debutant]Monde unix : différence entre un fichier .a et .la
    Par websurfeur dans le forum Autres éditeurs
    Réponses: 4
    Dernier message: 28/04/2006, 11h09
  5. Réponses: 5
    Dernier message: 17/05/2004, 15h29

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