Maison >développement back-end >Tutoriel Python >Conseil rapide: contrôler les fenêtres avec Python

Conseil rapide: contrôler les fenêtres avec Python

Lisa Kudrow
Lisa Kudroworiginal
2025-02-15 08:44:10535parcourir

Ce guide rapide montre comment contrôler les fenêtres à l'aide de Python. Tiration de l'API Win32 et des bibliothèques de wrapper utiles, Python offre un contrôle robuste sur diverses fonctionnalités Windows.

Quick Tip: Controlling Windows with Python

Concepts clés:

  • API API WIN32: Python interagit avec le système d'exploitation Windows via l'API Win32. Bien que l'API lui-même puisse être complexe, les bibliothèques de wrapper simplifient considérablement le processus.

  • winreg Module: Le module winreg de Python

    permet une interaction directe avec le registre Windows sans avoir besoin d'installations supplémentaires. Ceci est utile pour récupérer les informations du système.
  • PyWin32 Module:

    Ce module donne accès à l'API Win32 complète, y compris l'API Windows Shell. Cela permet des opérations avancées comme la localisation des dossiers du système.
  • PyGetWindow Module:

    Une bibliothèque conviviale pour l'énumération et la manipulation des fenêtres à l'écran. Les fonctions incluent l'identification, le redimensionnement, le déplacement, la minimisation, la maximisation et la mise en place de fenêtres au premier plan.

Interaction du registre Windows:

winreg Le registre Windows est directement accessible via le module

de Python. Par exemple, trouver l'emplacement du répertoire des fichiers du programme:
<code class="language-python">import winreg
hive = winreg.ConnectRegistry(None, winreg.HKEY_LOCAL_MACHINE)
key = winreg.OpenKey(hive, r"SOFTWARE\Microsoft\Windows\CurrentVersion")
value, type = winreg.QueryValueEx(key, "ProgramFilesDir")
print(value)  # Output: C:\Program Files</code>

r"..." Remarquez l'utilisation des chaînes brutes (

) pour gérer correctement les barres réalisatrices dans les chemins Windows.

Utilisation des bibliothèques API et wrapper Windows:

PyWin32 Le module SHGetKnownFolderPath déverrouille la puissance de l'API Win32. Pour trouver le répertoire des fichiers du programme à l'aide de

:
<code class="language-python">from win32com.shell import shell, shellcon
print(shell.SHGetKnownFolderPath(shellcon.FOLDERID_ProgramFiles, 0)) # Output: C:\Program Files</code>

PyGetWindow

simplifie la gestion des fenêtres:
<code class="language-python">import pygetwindow as gw
edge_windows = gw.getWindowsWithTitle("Microsoft Edge")
if edge_windows:
    edge_windows[0].minimize() # Minimize the first Edge window found</code>

PyGetWindow getWindowsWithTitle() offre des fonctions comme getActiveWindow(), resizeTo(), moveTo(), minimize(), maximize(), bringToFront(), et

.

Installation et informations supplémentaires:

  • pygetwindow: pip install pygetwindow installer en utilisant
  • .
  • pywin32: pip install pywin32 Installez en utilisant
  • .

Cet extrait provient de Python utile

, disponible sur SitePoint Premium et divers détaillants de livres électroniques. Reportez-vous au livre pour des explications plus détaillées et des techniques avancées.

Questions fréquemment posées (FAQ):

(réponses condensées pour la concitation)
  • Installation de pygetwindow: Utiliser pip install pygetwindow (ou pip3 si nécessaire).
  • Fonctions PygetWindow: fournit des fonctions pour obtenir, manipuler et contrôler les fenêtres (voir les exemples de code ci-dessus).
  • Obtenir des fenêtres spécifiques: Utiliser getWindowsWithTitle().
  • Minimisation / maximisation: Utiliser minimize() et maximize() Méthodes.
  • Méthodes en mouvement / redimensionnement: Utiliser moveTo() et resizeTo() Méthodes.
  • Menant en tête: Utiliser bringToFront().
  • Vérification de la visibilité: Utilisez l'attribut isVisible.
  • Close Windows: pygetwindow ne se ferme pas directement; Utilisez pyautogui.hotkey('alt', 'f4') après avoir apporté la fenêtre à l'avant.
  • Compatibilité: pygetwindow fonctionne bien avec d'autres bibliothèques d'automatisation de GUI comme pyautogui et pynput.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn