Tk - Widget di tela

La tela viene utilizzata per fornire aree di disegno. La sintassi per il widget canvas è mostrata di seguito:

canvas canvasName options

Opzioni

Le opzioni disponibili per il widget canvas sono elencate di seguito nella tabella seguente:

Sr.No. Sintassi e descrizione
1

-background color

Utilizzato per impostare il colore di sfondo per il widget.

2

-closeenough distance

Imposta la vicinanza del cursore del mouse a un elemento visualizzabile. L'impostazione predefinita è 1,0 pixel. Questo valore può essere una frazione e deve essere positivo.

3

-scrollregion boundingBox

Il riquadro di delimitazione per l'area totale di questa tela.

4

-height number

Utilizzato per impostare l'altezza del widget.

5

-width number

Imposta la larghezza per il widget.

6

-xscrollincrement size

La quantità da scorrere orizzontalmente quando lo scorrimento è richiesto.

7

-yscrollincrement size

La quantità da scorrere verticalmente quando lo scorrimento è richiesto.

Di seguito è mostrato un semplice esempio di widget canvas:

#!/usr/bin/wish

canvas .myCanvas -background red -width 100 -height 100 
pack .myCanvas

Quando eseguiamo il programma sopra, otterremo il seguente output:

Widget per disegnare su tela

Di seguito è riportato l'elenco dei widget disponibili per il disegno su tela:

Sr.No. Widget e descrizione
1 Linea

Disegna una linea.

2 Arco

Disegna un arco.

3 Rettangolo

Disegna un rettangolo.

4 Ovale

Disegna un ovale.

5 Poligono

Disegna un poligono.

6 Testo

Disegna un testo.

7 Bitmap

Disegna una bitmap.

8 Immagine

Disegna un'immagine.

Di seguito è mostrato un esempio che utilizza diversi widget canvas:

#!/usr/bin/wish

canvas .myCanvas -background red -width 200 -height 200 
pack .myCanvas
.myCanvas create arc 10 10 50 50 -fill yellow
.myCanvas create line 10 30 50 50 100 10 -arrow both -fill yellow -smooth true
   -splinesteps 2
.myCanvas create oval 50 50 100 80 -fill yellow
.myCanvas create polygon 50 150 100 80 120 120 100 190 -fill yellow -outline green
.myCanvas create rectangle 150 150 170 170  -fill yellow
.myCanvas create text 170 20 -fill yellow -text "Hello" -font {Helvetica -18 bold}
.myCanvas create bitmap 180 50 -bitmap info

Quando eseguiamo il programma sopra, otterremo il seguente output: