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 :

MainForm en bsNone et WM_CLOSE pour fermer l'application


Sujet :

C++Builder

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 1
    Points : 1
    Points
    1
    Par défaut MainForm en bsNone et WM_CLOSE pour fermer l'application
    Bonjour,

    J'ai crée une application dont la fenêtre principale est en bsNone pour la propriété BorderStyle. Normalement, cette application devrait être arrêtée lorsque l'UPS du PC lui envoit la commande (un WM_CLOSE) de fermeture, mais hélas ce n'est pas le cas, l'application ne se ferme pas quand l'UPS commande la fermeture de l'OS (XP). Pour mieux comprendre, j'ai ajouté une fonction interceptant tous les messages reçus par l'application: quand l'application est compilée avec bsSingle ou bsSizeable, ça marche , le message WM_CLOSE est reçue par l'application et se ferme, mais dès que cette propriété est à bsNone ou même bsDialog, que cela soit fait à la compilation ou à l'exécution, le message WM_CLOSE n'est pas reçu par l'application, qui reste ouverte pendant que Windows se ferme .
    Quelqu'un aurait-il une idée pour expliquer voire contourner ce problème? Je me demande en quoi la présence ou l'absence de la barre de titre devrait géner la réactivité de mon application .

    Merci à qui voudra bien m'aider,

  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
    Je crois que le fait d'avoir la fenêtre principale en bsNone supprime les options du menu système (SYSMENU) qui permettent justement d'exécuter certaines actions. De ce fait, les évènements censés être traités par WM_SYSCOMMAND ne le sont pas car il ne sont pas interceptés. Peut être que si tu traites toi-même l'évènement WM_CLOSE en appelant Application->Terminate() cela résoudra ton problème. A voir...
    RAD Studio 10.3 / Ubuntu 20.04 - RYZEN 7 2700X - 24Go de RAM

Discussions similaires

  1. Bouton pour fermer l'application
    Par lupin78 dans le forum Composants graphiques
    Réponses: 5
    Dernier message: 13/02/2012, 00h53
  2. Réponses: 2
    Dernier message: 30/01/2012, 12h44
  3. [Débutant] ALT+F4 pour fermer l'application complète
    Par cascroute13 dans le forum C#
    Réponses: 1
    Dernier message: 27/09/2011, 23h58
  4. commande pour fermer une application
    Par zakuli dans le forum Windows XP
    Réponses: 8
    Dernier message: 12/03/2011, 00h22
  5. Menu pour fermer une application[BCB6]
    Par Draner dans le forum C++Builder
    Réponses: 5
    Dernier message: 21/07/2007, 01h49

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