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

Python Discussion :

Interception du clavier alt+F4


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Avatar de toumic2.0
    Homme Profil pro
    Gammologie (Étudie, code, publie des gammes)
    Inscrit en
    Janvier 2021
    Messages
    167
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Gammologie (Étudie, code, publie des gammes)
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Janvier 2021
    Messages : 167
    Par défaut Interception du clavier alt+F4
    Bonjour

    Je réalise un programme qui trie les gammes musicales 🎼, et j'utilise PyCharm.
    Mon code provoque l'ouverture d'une fenêtre, jusqu'ici tout va bien. Le problème intervient quand je ferme la dernière fenêtre ouverte (je n'ai pas testé sur les fenêtres précédentes), en faisant ce jeu de touches de mon clavier alt+F4 cela provoque une interruption du programme et en fermant PyCharm.
    - Je ne sais pas comment ça se produit, mais j'aimerais bien intercepter cette opération afin d'éviter le bug.

    Merci d'avance.

  2. #2
    Expert confirmé Avatar de papajoker
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 323
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 323
    Par défaut
    bonjour
    Citation Envoyé par toumic2.0 Voir le message
    afin d'éviter le bug
    Je ne sais pas comment ça se produit
    Mais quel bug ? sur certains bureaux, il est normal que alt+F4 ferme la fenêtre active, c'est une fonctionnalité de ton bureau ! Un classique comme Ctrl+Alt+Suppr.
    Si on a les mains sur le clavier, prendre la souris pour fermer son application est une perte de temps !

    Perso, j'utilise plasma et dans la config de mon système, il est possible de dévalider cette fonctionnalité par défaut si je le désire

  3. #3
    Membre très actif
    Avatar de toumic2.0
    Homme Profil pro
    Gammologie (Étudie, code, publie des gammes)
    Inscrit en
    Janvier 2021
    Messages
    167
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Gammologie (Étudie, code, publie des gammes)
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Janvier 2021
    Messages : 167
    Par défaut
    C'est que normalement, quand je fais alt+F4 sur la fenêtre principale de mon application, aucune erreur ne se produit.
    La fenêtre principale est une exécution du code qui est sur l'éditeur-exécuteur, et lors de l'essai de alt+F4, l'éditeur est resté ouvert.

    Il y a une image sur la fenêtre principale qui au clic ferme la "principale" et ouvre une nouvelle fenêtre. Sauf que quand (par astuce ☺) j'effectue alt+F4 sur la nouvelle fenêtre, le déroulement s'arrête et finalement conduit à la fermeture non désirée de PyCharm.

    Nom : bugPyCharmCapture d'écran 2024-05-02 131532.png
Affichages : 103
Taille : 332,7 Ko

  4. #4
    Membre très actif
    Avatar de toumic2.0
    Homme Profil pro
    Gammologie (Étudie, code, publie des gammes)
    Inscrit en
    Janvier 2021
    Messages
    167
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Gammologie (Étudie, code, publie des gammes)
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Janvier 2021
    Messages : 167
    Par défaut
    En fait, j'ai résolu mon problème :

    • J'ai créé un protocole


    1. Code : Sélectionner tout - Visualiser dans une fenêtre à part
      self.protocol("WM_DELETE_WINDOW", self.quitter())


    • Puis, la fonction


    1. Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      4
      @staticmethoddef quitter():
          """Pour effectuer une transition en fenêtrage"""
      
           print("\t", lineno(), "**   Fonction quitter")

  5. #5
    Membre très actif
    Avatar de toumic2.0
    Homme Profil pro
    Gammologie (Étudie, code, publie des gammes)
    Inscrit en
    Janvier 2021
    Messages
    167
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Gammologie (Étudie, code, publie des gammes)
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Janvier 2021
    Messages : 167
    Par défaut
    Le problème venait dès lors qu'on change une fenêtre, par une autre. Le fait d'avoir détruit l'ancienne "qui n'a plus le focus", la nouvelle fenêtre qui s'ouvre n'a pas le focus tant qu'on ne clique pas dessus. Alors pour pouvoir "zapper" la fenêtre avec alt+F4, il faut lui donner le focus :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    self.focus_force()  # Donnez l'intérêt à la fenêtre

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

Discussions similaires

  1. Ajout de menu avec raccourci clavier Alt+lettre
    Par jpclabaux dans le forum Général VBA
    Réponses: 2
    Dernier message: 21/06/2011, 17h13
  2. Interception évènements clavier (keylogger windows mobile)
    Par micheln dans le forum Windows Mobile
    Réponses: 0
    Dernier message: 08/06/2009, 11h29
  3. Intercepter la touche ALT-F4
    Par soso78 dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 04/03/2008, 15h09
  4. Intercepter message clavier
    Par pieroznight dans le forum Langage
    Réponses: 6
    Dernier message: 02/12/2007, 18h50
  5. [Touche] Intercepter la séquence ALT+F4
    Par masto dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 29/04/2004, 15h33

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