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

PyQt Python Discussion :

Contrôler le refraichissement d'affichage au survol de la souris


Sujet :

PyQt Python

  1. #1
    Rédacteur


    Homme Profil pro
    Instituteur retraité
    Inscrit en
    Novembre 2015
    Messages
    891
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Instituteur retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2015
    Messages : 891
    Points : 4 157
    Points
    4 157
    Billets dans le blog
    1
    Par défaut Contrôler le refraichissement d'affichage au survol de la souris
    Bonjour,

    Je modifie pour mes besoins une application en pyQt.

    Ce sscript affiche de grandes icônes permettant de lancer des applications. J'ai introduit une fonction de lecture du label des icônes par synthèse vocale au survol de la souris:
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     def enterEvent (self, event):
            self.w.setStyleSheet(self.sel)
            lit(texte_du_label)

    "lit" renvoie à une procédure qui appelle espeak en sous-processus shell.
    Cela fonctionne parfaitement mais je me heurte au problème suivant: le changement d'aspect du bouton au survol ne se fait qu'après la lecture du texte du bouton, alors que l'appel à setStyleSheet est pourtant fait avant. Avec la latence due au temps nécessaire à la lecture, cela pose un problème ergonomique. Il faudrait que l'aspect de l'icône, qui montre qu'elle est sous la souris, change avant que ne se fasse la lecture tu texte du label.

    Comment peut-on contrôler cela ?

    Je précise que je suis totalement débutant en Python, c'est pourquoi je fais appel à votre compréhension quant au niveau des explications que vous voudrez bien me donner !
    Plus on apprend, plus on découvre que ce que l'on sait est insignifiant face à tout ce que l'on ne sait pas.
    Retrouvez la liste de mes articles et tutoriels sur la sauvegarde-restauration, les distributions éducatives, le système Linux et le Raspberry pi en cliquant sur ce lien.

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 300
    Points : 6 780
    Points
    6 780
    Par défaut
    Salut,

    Essaye en ajoutant QtCore.QCoreApplication.processEvents() juste avant d'appeler ta fonction.

  3. #3
    Rédacteur


    Homme Profil pro
    Instituteur retraité
    Inscrit en
    Novembre 2015
    Messages
    891
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Instituteur retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2015
    Messages : 891
    Points : 4 157
    Points
    4 157
    Billets dans le blog
    1
    Par défaut
    Merci de ta réponse VinsS

    Quand j'ajoute cette ligne, ça ne résout pas le problème. Mais chose curieuse, lorsque j'avance dans le programme en mode débogage, là l'icône change bien avant l'appel à la fonction de lecture, ce qui n'est pas le cas sans cette ligne.
    L'interpréteur semble donc définir des ordres de priorité à l'exécution.
    Plus on apprend, plus on découvre que ce que l'on sait est insignifiant face à tout ce que l'on ne sait pas.
    Retrouvez la liste de mes articles et tutoriels sur la sauvegarde-restauration, les distributions éducatives, le système Linux et le Raspberry pi en cliquant sur ce lien.

Discussions similaires

  1. Affichage au survol du point
    Par kobeddl dans le forum ODS et reporting
    Réponses: 4
    Dernier message: 26/06/2012, 10h00
  2. Affichage au survol de marqueurs KLM
    Par Zébulon-21 dans le forum IGN API Géoportail
    Réponses: 40
    Dernier message: 22/06/2010, 11h53
  3. Affichage au survol avec OpenLayers.Control.SelectFeature
    Par mga_geo dans le forum IGN API Géoportail
    Réponses: 5
    Dernier message: 30/04/2010, 10h28
  4. Affichage d'une donnée suite à survol de la souris
    Par sandrine49 dans le forum Struts 1
    Réponses: 2
    Dernier message: 15/06/2009, 12h56
  5. affichage au survol de la souris
    Par tarang dans le forum Général JavaScript
    Réponses: 15
    Dernier message: 12/07/2007, 12h50

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