Python Tkinter Canvas

Programmation d'interface graphique Python

Le widget Canvas de Python Tkinter est comme le canvas en HTML5 ; il est utilisé pour le dessin. Vous pouvez placer des graphiques, du texte, des widgets ou des cadres sur le canvas.

Syntaxe

Le format de la syntaxe est le suivant :

w = Canvas ( master, option=value, ... )
  • master : le conteneur parent du bouton.

  • options : éléments facultatifs, c'est-à-dire les propriétés configurables du bouton. Ces options peuvent être définies sous la forme clé = valeur, séparées par des virgules.

Non. Option & Description
1

bd

Largeur de bordure, en pixels, la valeur par défaut est 2 pixels.

2

bg

Couleur d'arrière-plan

3

confine

Si true (par défaut), il est impossible de faire défiler le canvas en dehors de la zone défilable.

4

cursor

Réglage de la forme du curseur, par exemple arrow, circle, cross, plus, etc.

5

height

Height

6

highlightcolor

La couleur à mettre en surbrillance

7

relief

Style de bordure, les valeurs possibles sont FLAT, SUNKEN, RAISED, GROOVE, RIDGE. La valeur par défaut est FLAT.

8

scrollregion

Un tuple (w, n, e, s) qui définit la zone défilable maximale du canvas, où w est le côté gauche, n est le haut, e est le côté droit et s est le bas.

9

width

La taille du canvas sur l'axe de coordonnées X.

10

xscrollincrement

La valeur utilisée pour les requêtes de défilement horizontal.

11

xscrollcommand

Barre de défilement horizontale ; si le canevas est défilable, cet attribut est la méthode .set() de la barre de défilement horizontale.

12

yscrollincrement

Similaire à xscrollincrement, mais dans le sens vertical.

13

yscrollcommand

Barre de défilement verticale ; si le canevas est défilable, cet attribut est la méthode .set() de la barre de défilement verticale.

Le widget Canvas prend en charge les options standard suivantes :

arc − Créer un arc

coord = 10, 50, 240, 210
arc = canvas.create_arc(coord, start=0, extent=150, fill="blue")

image − Créer une image

filename = PhotoImage(file = "sunshine.gif")
image = canvas.create_image(50, 50, anchor=NE, image=filename)

line − Créer une ligne

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

oval − Créer un ovale

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

polygon − Créez un polygone avec au moins trois sommets

oval = canvas.create_polygon(x0, y0, x1, y1,...xn, yn, options)

Exemple

Dans l'exemple, cliquer sur le bouton affichera un message :

Exemple

#!/usr/bin/python # -*- coding: UTF-8 -*- import Tkinter import tkMessageBox # -*- coding: cp936 -*- # Créez un rectangle et définissez la couleur du canevas sur blanc from Tkinter import * root = Tk() # Créez un Canvas et définissez sa couleur d'arrière-plan sur blanc cv = Canvas(root,bg = 'white') # Créez un rectangle avec les coordonnées (10,10,110,110) cv.create_rectangle(10,10,110,110) cv.pack() root.mainloop() # Pour plus de clarté, définissez la couleur d'arrière-plan sur blanc pour le distinguer de root top⟧mainloop.mainloop()

La sortie du test est la suivante :

Programmation d'interface graphique Python

Autres extensions