Tk – Canvas Widgets

  • Post author:
  • Post category:Tk
  • Post comments:0 Comments
Tk - Canvas Widgets

Canvas widgets is used for providing drawing areas in Tk. The syntax for Tk canvas widgets is shown below for −

canvas canvasName options

Options

The options available for the canvas widget are listed below in the following table −

Sr.No.Syntax & Description
1-background colorUsed to set background color for widget.
2-closeenough distanceSets the closeness of mouse cursor to a displayable item. The default is 1.0 pixel. This value may be a fraction and must be positive.
3-scrollregion boundingBoxThe bounding box for the total area of this canvas.
4-height numberUsed to set height for widget.
5-width numberSets the width for widget.
6-xscrollincrement sizeThe amount to scroll horizontally when scrolling is requested.
7-yscrollincrement sizeThe amount to scroll vertically when scrolling is requested.

A simple example for canvas widget is shown below −

#!/usr/bin/wish

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

When we run the above program, we will get the following output −

Widgets for Drawing in Canvas

The list of the available widgets for drawing in canvas is listed below −

Sr.No.Widget & Description
1Line
Draws a line.
2Arc
Draws an arc.
3Rectangle
Draws a rectangle.
4Oval
Draws an oval.
5Polygon
Draws a polygon.
6Text
Draws a text.
7Bitmap
Draws a bitmap.
8Image
Draws an image.

An example using different canvas widgets is shown below −

#!/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

When we run the above program, we will get the following output −

Next Topic : Click Here

Leave a Reply