Canvas Tkinter | Python 3

Canvas est une zone rectangulaire destinée à dessiner des images ou d’autres formes complexes. Vous pouvez placer des graphiques, du texte, des widgets ou des frames sur un canvas.
 

Syntaxe:

Voici la syntaxe pour créer ce widget :

c = Canvas ( master, option = value, ... )

 
 

Paramètres:
  • master : Cela représente la fenêtre parent.
  • options : Voir ci-dessous la liste des options les plus couramment utilisées pour ce widget. Ces options peuvent être utilisées sous forme de paires clé-valeur séparées par des virgules.

 

Exemple :
from tkinter import *

master = Tk()

w = Canvas(master, width=200, height=100)
w.pack()

w.create_line(0, 0, 200, 100, fill="red", dash=(4, 4))
w.create_line(0, 100, 200, 0)

w.create_rectangle(55, 30, 140, 70, fill="red")

mainloop()

Sortie:


 
 

Tableau des options pour le widget Canvas
Option
Description
confine Si true (par défaut), le canevas ne peut pas défiler en dehors de la région de défilement.
cursor Curseur utilisé dans le canevas comme une flèche, un cercle, un point, etc.
bd Largeur de bordure en pixels. La valeur par défaut est 2.
bg Couleur de fond normale.
height Taille du canevas dans la dimension Y.
scrollregion Un tuple (w, n, e, s) qui définit la zone de défilement du canevas, où w est le côté gauche, n le haut, e le côté droit et s le bas.
width Taille du canevas dans la dimension X.
highlightcolor La couleur du focus lorsque le widget a le focus.
relief Relief indique le type de bordure. Certaines des valeurs sont SUNKEN, RAISED, GROOVE et RIDGE.

Le widget Canvas peut prendre en charge les éléments standard suivants:

Arc: Crée un arc.

coord = 15, 20, 200, 200
arc = w.create_arc(coord, start=0, extent=180, fill="red")


 
 
Image : Afficher une image sur le canvas.

from tkinter import *

canvas = Canvas(width=300, height=200, bg='black')
canvas.pack(expand=YES, fill=BOTH)

# charger le fichier image .gif
gif1 = PhotoImage(file='python.gif')

# mettre l'image sur le canvas
canvas.create_image(50, 10, image=gif1, anchor=NW)
mainloop()

Sortie:

Line : Crée une ligne.

line = canvas.create_line(x0, y0, x1, y1, options)

 
Oval : Crée un cercle ou une ellipse aux coordonnées données. Il faut deux paires de coordonnées; les coins supérieur gauche et inférieur droit de l’ovale.

oval = canvas.create_oval(x0, y0, x1, y1, options)

 
Polygon : Crée un polygone qui doit avoir au moins trois sommets.

polygon = canvas.create_polygon(x0, y0, x1, y1, options)

 

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *