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 :

Vérifier qu'une fenêtre est bien au premier plan


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2019
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2019
    Messages : 12
    Par défaut Vérifier qu'une fenêtre est bien au premier plan
    Bonjour à tous,

    Je cherche à réaliser un script qui, à un moment donné, lance des logiciels à l'aide de la fonction os.startfile et réalise après des tâches sur celui-ci à l'aide du package pyautogui. Je précise que je suis sous Windows et que je n'ai pas de possibilité de changer d'OS.

    Le problème, c'est que parfois cette fenêtre n'est pas au premier plan et donc les manipulations ne se réalisent pas telles que souhaitées. Après de longues recherches, je n'ai pas trouvé les informations que je souhaitais obtenir, d'où les questions suivantes :

    - Est-il possible de vérifier l'identité du programme au premier plan ? L'idée serait de vérifier le nom et si ce n'est pas celui souhaité, changer de fenêtre à l'aide de Alt+Tab par exemple.
    - Est-il possible de forcer à avoir une fenêtre au premier plan ?

    Merci d'avance pour vos réponses,
    UL

  2. #2
    Membre chevronné
    Homme Profil pro
    BTS SN IR
    Inscrit en
    Mai 2017
    Messages
    514
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : BTS SN IR

    Informations forums :
    Inscription : Mai 2017
    Messages : 514
    Par défaut
    bonjour,

    celà peux se faire avec win32gui.GetForegroundWindow()

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2019
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2019
    Messages : 12
    Par défaut
    Salut,

    Merci pour ta réponse mais j'ai un problème lors de l'installation du module win32gui... lorsque je tape la commande pip install win32gui dans l'invite de commande, j'ai le message suivant qui s'affiche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Command "c:\python37\python.exe c:\python37\lib\site-packages\pip\_vendor\pep517\_in_process.py get_requires_for_build_wheel C:\Users\ulaval\AppData\Local\Temp\tmp5ic9g_be" failed with error code 1 in C:\Users\ulaval\AppData\Local\Temp\pip-install-y9izrovy\win32gui
    J'ai cherché à réaliser divers manipulations trouvées sur internet, sans succès... Avez-vous une idée ?

    Merci à tous et bonne fin de journée !

  4. #4
    Membre chevronné
    Homme Profil pro
    BTS SN IR
    Inscrit en
    Mai 2017
    Messages
    514
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : BTS SN IR

    Informations forums :
    Inscription : Mai 2017
    Messages : 514
    Par défaut
    bonjour,

    https://pypi.org/project/win32gui/#history : il est fort probable que win32gui ne soit pas compatible avec python 3.7, je vous recommande d'utiliser une version plus ancienne (et d'utiliser un venv si ce n'était pas le cas)
    sinon désolé je ne connais pas d'autre solution, même si je suis sûr qu'il existe des alternatives. Peut être chercher des scripts en batch qui permettent cela, avec un peut de psutil ou subprocces c'est faisable.

  5. #5
    dsy
    dsy est déconnecté
    Membre éprouvé
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 105
    Par défaut
    PyWinAuto est une alternative à PyAutoGui qui gère les fenêtres : https://pywinauto.readthedocs.io/

    Sinon pour installer win32gui sous Windows et Python 3.7 :
    https://www.lfd.uci.edu/~gohlke/pythonlibs/

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2019
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2019
    Messages : 12
    Par défaut
    Ça marche parfaitement merci à tous !

    UL

Discussions similaires

  1. Réponses: 12
    Dernier message: 20/05/2015, 12h34
  2. Réponses: 0
    Dernier message: 16/10/2012, 13h39
  3. Comment vérifier si une application est bien démarrée
    Par emile.coue dans le forum Weblogic
    Réponses: 1
    Dernier message: 28/05/2010, 17h39
  4. Vérifier qu'une hiérarchie est bien organisée
    Par tendre_amie007 dans le forum Algorithmes et structures de données
    Réponses: 1
    Dernier message: 04/08/2009, 16h43
  5. Vérifier qu'une partition est bien montée
    Par Olivier Regnier dans le forum Linux
    Réponses: 6
    Dernier message: 30/03/2008, 00h29

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