ventana - tkinter python 3
Obtener la posición y el tamaño de la ventana con python (3)
¿Cómo puedo obtener y configurar la posición y el tamaño de la ventana (cualquier programa de Windows) con python?
Para Linux puedes usar la herramienta que hice here . 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.
Puede obtener las coordenadas de la ventana utilizando la función GetWindowRect
. Para esto, necesita un controlador para 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 de Win32 desde Python, use pywin32
.
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()