Obtén la posición y el tamaño de la ventana con python

¿Cómo puedo obtener y configurar la posición y el tamaño de la ventana (cualquier progtwig de Windows) con python?

Related of "Obtén la posición y el tamaño de la ventana con python"

Suponiendo que está en Windows, intente usar el módulo win32gui con sus funciones EnumWindows y GetWindowRect .

Si está utilizando Mac OS X, podría intentar usar appscript .

Para Linux, puedes probar una de las muchas interfaces para X11.

Edición: Ejemplo para Windows (no probado):

 import win32gui def callback(hwnd, extra): rect = win32gui.GetWindowRect(hwnd) x = rect[0] y = rect[1] w = rect[2] - x h = rect[3] - y print("Window %s:" % win32gui.GetWindowText(hwnd)) print("\tLocation: (%d, %d)" % (x, y)) print("\t Size: (%d, %d)" % (w, h)) def main(): win32gui.EnumWindows(callback, None) if __name__ == '__main__': main() 

Puede obtener las coordenadas de la ventana utilizando la función GetWindowRect . Para esto, necesita un identificador de la ventana, que puede obtener utilizando FindWindow , suponiendo que sepa algo sobre la ventana (como su título).

Para llamar a las funciones de la API Win32 desde Python, use pywin32 .

Para Linux puedes usar la herramienta que hice aquí . La herramienta fue diseñada para un uso ligeramente diferente, pero puede utilizar la API directamente para sus necesidades.

Instalar herramienta

 sudo apt-get install xdotool xprop xwininfo git clone https://github.com/Pithikos/winlaunch.git && cd winlaunch 

En la terminal

 >>> from winlaunch import * >>> wid, pid = launch('firefox') >>> win_pos(wid) [3210, 726] 

wid y pid representan id de ventana e id de proceso respectivamente.