Comment définir l'icône de la fenêtre dans Tkinter
-
root.iconbitmap
pour définir l’icône de la fenêtre -
tk.call('wm', 'Iconphoto', )
Méthode pour définir l’icône de la fenêtre -
root.iconphoto
pour définir l’icône de la fenêtre
Nous allons présenter des méthodes pour définir l’icône de la fenêtre dans Tkinter.
root.iconbitmap
pour définir l’icône de la fenêtreroot.tk.call()
pour définir l’icône de la fenêtreroot.iconphoto
pour définir l’icône de la fenêtre
root.iconbitmap
pour définir l’icône de la fenêtre
import tkinter as tk
root = tk.Tk()
root.iconbitmap("/path/to/ico/icon.ico")
root.mainloop()
iconbitmap(bitmap)
définit l’icône du widget window/frame à bitmap
. Le bitmap
doit être de type ico
, mais pas de type png
ou jpg
, sinon l’image ne sera pas affichée comme icône.
L’image ci-dessus montre quand le type ico
est utilisé dans iconbitmap
.
Si vous utilisez le type png
, l’icône affichée dans la fenêtre sera vide,
tk.call('wm', 'Iconphoto', )
Méthode pour définir l’icône de la fenêtre
import tkinter as tk
root = tk.Tk()
root.tk.call("wm", "iconphoto", root._w, tk.PhotoImage(file="/path/to/ico/icon.png"))
root.mainloop()
La méthode tk.call
est l’interface de Tkinter avec l’interpréteur tcl
. Nous pourrions lancer une commande tcl
en utilisant cette méthode call
.
C’est pratique quand le wrapper de Tkinter ne peut pas avoir accès à certaines fonctionnalités de tcl/tk
.
wm
communique avec le gestionnaire de fenêtres.
Nous devons définir l’image comme tk.PhotoImage
mais pas l’image elle-même, sinon nous aurons une erreur _tkinter.TclError
.
root.iconphoto
pour définir l’icône de la fenêtre
Une autre méthode pour définir l’icône de la fenêtre est d’utiliser la méthode root.iconphoto()
qui accepte plus de types d’images comme dans tk.call('wm', 'iconphoto', )
.
import tkinter as tk
root = tk.Tk()
root.iconphoto(False, tk.PhotoImage(file="/path/to/ico/icon.png"))
root.mainloop()
Ici, False
signifie que cette image d’icône s’applique seulement à cette fenêtre spécifique mais pas aux futurs toplevels
créés.
Si True
est utilisé, l’image de l’icône est appliquée à tous les futurs toplevels
créés également.
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook