Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
927 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  [Qt] quelle fonction pour intecepter la fermeture de la fenêtre d'app

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Qt] quelle fonction pour intecepter la fermeture de la fenêtre d'app

n°352477
warp
Posté le 04-04-2003 à 11:32:23  profilanswer
 

J'utilise KDevelop et QTDesigner,
 
pour l'instant je ferme mon application avec un menu,
avec ce menu j'appelle un fonction qui ferme bien tout avant de quitter.
 
J'aimerais pouvoir intercepter le bouton (en haut à droite) de la fenêtre puisque ce bouton quitte l'application,
mais je ne sais pas quelle fonction réécrire pour intecepter ce signal.

mood
Publicité
Posté le 04-04-2003 à 11:32:23  profilanswer
 

n°352498
gloop
Posté le 04-04-2003 à 11:49:43  profilanswer
 

le signal lastWindowClosed () de la classe QApplication est émit lorsque la dernière fenêtre est fermée. je sais pas si c'est que tu veux mais ca peut t'aider. sinon il y a aussi aboutToQuit () qui est appelée avant que l'application ne quitte.


Message édité par gloop le 04-04-2003 à 11:50:53
n°352500
bounty
Posté le 04-04-2003 à 11:49:57  profilanswer
 

Tu peut tjs associer une fct avec le signal de destruction de ta fenetre ds QT

n°352509
warp
Posté le 04-04-2003 à 11:53:23  profilanswer
 

Bounty a écrit :

Tu peut tjs associer une fct avec le signal de destruction de ta fenetre ds QT

C'est justement ce que je veux faire,
mais je ne connais pas ce signal,
apparemment gloop a répondu à ma question.

n°352512
gloop
Posté le 04-04-2003 à 11:54:11  profilanswer
 

tu peux aussi faire ton nettoyage dans le closeEvent () en surchargeant cette méthode. ou encore tout nettoyer dans le destructeur de ta classe gérant la fenêtre principale, mais là, faut pas oublier de mettre le flag WDestructiveClose dans les flags de ta fenêtre. Bref, y a plein de facons de faire, c'est à toi de voir comment tu veux le faire.

n°352547
warp
Posté le 04-04-2003 à 12:15:25  profilanswer
 

Ben je comprend pas trop,
 
pour surcharger, il faut bien appeler la fonction avec le même nom que la fonction que l'on veut surcharger......précédée de virtual ? non ?
 
....parce que ça ne fonctionne pas...

n°352565
gloop
Posté le 04-04-2003 à 12:25:54  profilanswer
 

warp a écrit :

Ben je comprend pas trop,
 
pour surcharger, il faut bien appeler la fonction avec le même nom que la fonction que l'on veut surcharger......précédée de virtual ? non ?
 
....parce que ça ne fonctionne pas...


t'es pas obligé de repréciser virtual.
t'as qu'à rajouter
 

Code :
  1. void closeEvent (QCloseEvent *e)
  2. {
  3. /* ... */
  4. }


tu peux accepter l'évenement ou le rejeter, si tu fais rien, l'événement continue d'être propagé.
 
Qu'est ce que t'entends par ca marche pas ?

n°352575
warp
Posté le 04-04-2003 à 12:33:42  profilanswer
 

Ok en fait j'ai suivi ton conseil au pied de la lettre,
 
j'avais surchargé closeEvent()
et non pas closeEvent(QCloseEvent *e)
 
 
Maintenant cela fonctionne.
 
Merci.   :hello:

n°352581
warp
Posté le 04-04-2003 à 12:35:42  profilanswer
 

Me reste à intercepter le signal kill et c'est bon.....


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  [Qt] quelle fonction pour intecepter la fermeture de la fenêtre d'app

 

Sujets relatifs
je Cherche la fonction qui surcharge un INT en un VARCHAR !!!![javascript] fermeture du navigateur
Probleme avec la fonction scrollTo[Batch] Fenetre DOS qui se ferme !
[Java] Afficher le contenu d'un fichier texte dans une fenêtre ?Problème avec un appel de fonction
fermeture navigateur javascriptfonction fwrite
[PHP] probleme avec la fonction date()[PHP] Fonction phpinfo()
Plus de sujets relatifs à : [Qt] quelle fonction pour intecepter la fermeture de la fenêtre d'app


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR