Cómo configurar el icono de la ventana en Tkinter

  1. root.iconbitmap para establecer el icono de la ventana
  2. tk.call('wm', 'iconphoto', ) Método para establecer el icono de la ventana
  3. root.iconphoto para establecer el icono de la ventana

Introduciremos métodos para establecer el icono de la ventana en Tkinter.

  1. root.iconbitmap para establecer el icono de la ventana
  2. root.tk.call() para fijar el icono de la ventana
  3. root.iconphoto para establecer el icono de la ventana

root.iconbitmap para establecer el icono de la ventana

import tkinter as tk
root = tk.Tk()

root.iconbitmap('/path/to/ico/icon.ico')
root.mainloop()

iconbitmap(bitmap)pone el icono del widget de ventana/frame enbitmap. Elbitmapdebe ser de tipoico, pero no de tipopngojpg`, de lo contrario, la imagen no se mostrará como el icono.

Tkinter establece el icono de la ventana

La imagen de arriba muestra cuando se usa el tipo ico en iconbitmap.

Si utiliza el tipo png, el icono que se muestra en la ventana estará en blanco,

Tkinter set icono de la ventana con png

tk.call('wm', 'iconphoto', ) Método para establecer el icono de la ventana

import tkinter as tk
root = tk.Tk()

root.tk.call('wm', 'iconphoto', root._w, tk.PhotoImage(file='/path/to/ico/icon.png')

root.mainloop()

El método tk.call es la interfaz Tkinter para el intérprete tcl. Podríamos ejecutar un comando tcl utilizando este método call.

Es muy útil cuando el wrapper de Tkinter no puede acceder a algunas funciones de tcl/tk.

El wm se comunica con el gestor de ventanas.

Necesitamos configurar la imagen como tk.PhotoImage pero no la imagen en sí misma, de lo contrario tendremos un error _tkinter.TclError.

root.iconphoto para establecer el icono de la ventana

Otro método para establecer el icono de la ventana es usar root.iconphoto() método que acepta más tipos de imágenes como en tk.call('wm', 'iconphoto', ).

import tkinter as tk
root = tk.Tk()

root.iconphoto(False, tk.PhotoImage(file='/path/to/ico/icon.png'))
root.mainloop()

Aquí, False significa que esta imagen de icono se aplica sólo a esta ventana específica pero no a las futuras toplevels creadas.

Si se usa True, la imagen del icono se aplica a todos los toplevels creados en el futuro también.

Artículo relacionado - Tkinter Icon

comments powered by Disqus