How do you create a Button on a Tkinter Canvas?

Canvas widget is one of the versatile widgets in the Tkinter library. You can use canvas to draw different shapes, arcs, and objects to animate within the canvas. To create a button on a Tkinter Canvas, simply pass the parent as the canvas in place of a parent in the Button constructor.


In this example, we will see how to create a Button inside a canvas widget.

#Import the required libraries
from tkinter import *
from tkinter import ttk

#Create an instance of Tkinter Frame
win = Tk()

#Set the geometry of Tkinter Frame

#Define a function for exit
def exit_program():

#Add a canvas widget
canvas = Canvas(win, width= 350)

#Add a Label widget in the Canvas
label = Label(canvas, text= "Click the Button to Exit", font= ('Helvetica 17 bold'))
label.pack(pady= 30)

#Create a button in canvas widget
ttk.Button(canvas, text= "Exit", command= exit_program).pack()



Running the above code will display a window with a button inside the canvas.

Clicking the button "Exit" will close the window.

Updated on: 25-May-2021

4K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started