Open In App

Python Tkinter | Create different type of lines using Canvas class

Improve
Improve
Like Article
Like
Save
Share
Report

In Tkinter, Canvas.create_line() method is used to create lines in any canvas. These lines can only be seen on canvas so first, you need to create a Canvas object and later pack it into the main window.
 

Syntax: 

Canvas.create_line(x1, y1, x2, y2, ...., options = ...)

Note: Minimum of 4 points are required to create a line, but you can also add multiple points to create different drawings.
Class parameters:
 

Data members used: 
master 
canvas
Member functions used for the given class: create() method
Widgets used: Canvas
Tkinter method used: 
canvas.create_line() 
pack() 
title() 
geometry() 
 

Below is the Python code – 
 

Python3




# Imports each and every method and class
# of module tkinter and tkinter.ttk
from tkinter import *
from tkinter.ttk import *
 
class GFG:
    def __init__(self, master = None):
        self.master = master
 
        # Calls create method of class GFG
        self.create()
 
    def create(self):
 
        # This creates a object of class canvas
        self.canvas = Canvas(self.master)
 
        # This creates a line of length 200 (straight horizontal line)
        self.canvas.create_line(15, 25, 200, 25)
 
        # This creates a lines of 300 (straight vertical dashed line)
        self.canvas.create_line(300, 35, 300, 200, dash = (5, 2))
         
        # This creates a triangle (triangle can be created by other methods also)
        self.canvas.create_line(55, 85, 155, 85, 105, 180, 55, 85)
         
        # This pack the canvas to the main window and make it expandable
        self.canvas.pack(fill = BOTH, expand = True)
 
if __name__ == "__main__":
     
    # object of class Tk, responsible for creating
    # a tkinter toplevel window
    master = Tk()
    geeks = GFG(master)
 
    # This sets the title to Lines
    master.title("Lines")
 
    # This sets the geometry and position of window
    # on the screen
    master.geometry("400x250 + 300 + 300")
 
    # Infinite loop breaks only by interrupt
    master.mainloop()


Output: 
 

Example 2: For filing color in the shapes.

Python3




from tkinter import *
root=Tk()
root.title("canvas line")
root.geometry("555x555")
our_canvas=Canvas(root,width=300,height=200,bg="white")
our_canvas.pack()
#creating rectangle
our_canvas.create_rectangle(50,150,250,50,fill="blue")
root.mainloop()


Output:

 



Last Updated : 02 Nov, 2021
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads