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 :

Quitter mon programme


Sujet :

C++Builder

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Février 2004
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2004
    Messages : 13
    Points : 12
    Points
    12
    Par défaut Quitter mon programme
    Bonjour
    Je ne parviens pas à trouver comment quitter mon programme par programmation. Je m'explique.
    Dans un "dialog", je lance une procédure assez longue et quand celle-ci est finie, je voudrais que mon "dialog" se ferme "proprement" c-à-d en appelant la fonction "FormClose" comme si je le faisais manuellement par la croix de ma fenêtre. Et ensuite faire la même chose pour ma fenêtre principale et ainsi quitter mon application.
    Ca ne doit pas être compliqué mais je ne suis pas habitué au Borland C++.
    Merci à tous de votre aide et bon week-end
    Domi

  2. #2
    Membre averti
    Avatar de Altau
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    296
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 296
    Points : 360
    Points
    360
    Par défaut
    Il faut soit exécuter un Close() de la fiche principale, soit un Application->Terminate().
    RAD Studio 10.3 / Ubuntu 20.04 - RYZEN 7 2700X - 24Go de RAM

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Février 2004
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2004
    Messages : 13
    Points : 12
    Points
    12
    Par défaut
    Bonjour Altau,
    Merci de cette réponse rapide.
    Close(), j'avais déjà essayé, je viens d'essayer Application->Terminate().
    Les 2 ferment bien mon "appli" mais apparemment ne passent pas par mes fonctions TEventWin::FormClose() et du "dialog" ouvert et de la fenêtre principale.
    Ces fonctions sauvent des données dans des fichiers, et donc dans ce cas elles sont perdues.
    Merci encore
    Domi

  4. #4
    Membre averti
    Avatar de Altau
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    296
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 296
    Points : 360
    Points
    360
    Par défaut
    Pour être averti que le programme doit fermer, il faut gérer l'évènement "OnCloseQuery" et affecter la valeur true à CanClose après avoir exécuté le traitement requis.
    RAD Studio 10.3 / Ubuntu 20.04 - RYZEN 7 2700X - 24Go de RAM

  5. #5
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Février 2004
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2004
    Messages : 13
    Points : 12
    Points
    12
    Par défaut Si cela interesse qqun
    Si cela intéresse qqun:
    Voila ce que je constate après quelques tests.
    1er test
    Pour sotir de la "sous" fenêtre, j'utilise Close() et je passe bien automatiquement dans FormClose().
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    // Ici une longue procédure
    if(EveClosePrgm->Checked==True) {
        Close();
        }
    Et je sors bien de ma fenêtre.
    2ème test
    Ensuite pour sortir de mon appli, je fais directement après le Close() de ma sous fenêtre: MyMainWin->Close() et là je passe bien aussi dans MyMainWin->FormClose() MAIS PLUS DANS FormClose() de ma sous fenêtre ???
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    // Ici une longue procédure
    if(EveClosePrgm->Checked==True) {
        Close();
        MyMainWin->Close();
        }
    Et je sors bien de mon appli.
    Est ce que les 2 Close() sont exécutés dans des threads différents???
    Si qqun peut m'expliquer? Merci d'avance

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

Discussions similaires

  1. Problème pour quitter mon programme
    Par AsmCode dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 03/02/2008, 06h42
  2. Procédure pour quitter mon programme
    Par Matalobos dans le forum GTK+ avec C & C++
    Réponses: 1
    Dernier message: 19/04/2007, 20h37
  3. [] Utiliser AVI d'une DLL dans mon programme
    Par seb.49 dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 02/05/2003, 14h52
  4. Réponses: 11
    Dernier message: 17/03/2003, 10h56
  5. Impossible de quitter mon application!
    Par Bouillou dans le forum C++Builder
    Réponses: 4
    Dernier message: 12/11/2002, 20h43

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