Tamaño de una ventana
Obtener el Tamaño Actual de la Ventana
Para obtener las dimensiones actuales de una ventana en Tkinter, puedes usar el método .geometry()
sin pasar argumentos, o los métodos .winfo_width()
y .winfo_height()
. Aquí te muestro cómo utilizarlos:
import tkinter as tk
def mostrar_tamano():
# Obtener el tamaño utilizando geometry()
tamano = ventana.geometry()
print("Tamaño actual (geometry):", tamano)
# Obtener el tamaño utilizando winfo_width() y winfo_height()
ancho = ventana.winfo_width()
alto = ventana.winfo_height()
print("Tamaño actual (winfo):", ancho, "x", alto)
# Crear la ventana principal
ventana = tk.Tk()
ventana.title("Ejemplo de Tamaño de Ventana")
# Configurar un tamaño inicial (opcional)
ventana.geometry("400x300")
# Crear un botón para mostrar el tamaño de la ventana
boton = tk.Button(ventana, text="Mostrar tamaño", command=mostrar_tamano)
boton.pack(pady=20)
# Iniciar el bucle principal de Tkinter
ventana.mainloop()
geometry() sin argumentos: Retorna una cadena con el tamaño y la posición de la ventana en el formato
anchoxalto+x+y
. Por ejemplo, "400x300+50+50".winfo_width() y winfo_height(): Estos métodos devuelven el ancho y el alto actual de la ventana en píxeles. Es importante notar que estos métodos deben usarse después de que la ventana ha sido dibujada (por ejemplo, dentro de una función llamada por un evento o después de iniciar el bucle principal).
Establecer el Tamaño de la Ventana
Si deseas establecer un tamaño específico para la ventana, puedes usar el método .geometry()
pasando una cadena con el formato anchoxalto
. Aquí un ejemplo:
# Configurar un tamaño inicial (opcional)
ventana.geometry("400x300")
update()
y update_idletasks()
update()
y update_idletasks()
Si necesitas obtener las dimensiones de la ventana antes de que el bucle principal haya comenzado, es útil llamar a ventana.update()
o ventana.update_idletasks()
después de establecer el tamaño o realizar cambios en el contenido de la ventana. Esto asegura que todas las actualizaciones pendientes a la interfaz gráfica se procesen, y que las dimensiones reportadas sean precisas.
Obtener el Tamaño de la Pantalla
Si lo que necesitas es obtener el tamaño de la pantalla completa donde se muestra la ventana, puedes utilizar .winfo_screenwidth()
y .winfo_screenheight()
. Estos métodos te proporcionan las dimensiones totales de la pantalla en píxeles.
import tkinter as tk
ventana = tk.Tk()
ancho_pantalla = ventana.winfo_screenwidth()
alto_pantalla = ventana.winfo_screenheight()
print("Ancho de la pantalla:", ancho_pantalla)
print("Alto de la pantalla:", alto_pantalla)
ventana.mainloop()
Última actualización