python

How to Make a Clickable Images using Python

This tutorial will teach you how to make a Clickable Images using Python.

Step 1 Code

from tkinter import *
from tkinter import messagebox

from PIL import Image, ImageTk

root = Tk()
canvas = Canvas(root, width=600, height=600)
canvas.pack()


def first():
    messagebox.showinfo('First','You clicked the first image')

def second():
    messagebox.showinfo('First','You clicked the second image')

def third():
    messagebox.showinfo('First','You clicked the third image')

img_file = Image.open("1.jpg")
img_file = img_file.resize((150, 150))
img = ImageTk.PhotoImage(img_file)
b1 = Button(canvas,image=img,command=first).pack()


img_file1 = Image.open("2.jpg")
img_file1 = img_file1.resize((150, 150))
img1 = ImageTk.PhotoImage(img_file1)
b2 = Button(canvas,image=img1,command=second).pack()

img_file2 = Image.open("3.jpg")
img_file2 = img_file2.resize((150, 150))
img2 = ImageTk.PhotoImage(img_file2)
b3 = Button(canvas,image=img2,command=third).pack()

root.mainloop()

Step 2 Code

from tkinter import *
from tkinter import messagebox
from PIL import Image, ImageTk

root = Tk()
canvas = Canvas(root, width=600, height=600)
canvas.pack()

def main(event):
    if event.widget.cget('image') == 'pyimage1':
        messagebox.showinfo('First','You clicked the first image')
    elif event.widget.cget('image') == 'pyimage2':
        messagebox.showinfo('Second','You clicked the second image')
    elif event.widget.cget('image') == 'pyimage3':
        messagebox.showinfo('Third','You clicked the third image')

img_file = Image.open("1.jpg")
img_file = img_file.resize((150, 150))
img = ImageTk.PhotoImage(img_file)
b1 = Button(canvas, image=img)
b1.pack()
b1.bind('<Button-1>', main)


img_file1 = Image.open("2.jpg")
img_file1 = img_file1.resize((150, 150))
img1 = ImageTk.PhotoImage(img_file1)
b2 = Button(canvas, image=img1)
b2.pack()
b2.bind('<Button-1>', main)

img_file2 = Image.open("3.jpg")
img_file2 = img_file2.resize((150, 150))
img2 = ImageTk.PhotoImage(img_file2)
b3 = Button(canvas, image=img2)
b3.pack()
b3.bind('<Button-1>', main)

root.mainloop()

 

admin

Recent Posts

Tailwind CSS Inventory Management POS Project (Free Source Code)

Inventory Management POS systems are now an essential part of modern businesses such as bookshops,…

10 hours ago

Build Simple Water System Calculator in Java Using Swing

If you're just beginning to learn Java GUI programming creating an Water System Calculator is a fantastic project for…

4 months ago

GitHub Copilot vs Microsoft Copilot Best AI Tool to Use in 2025

GitHub is a powerful tool used by teams and developers around the globe. This guide is…

4 months ago

Chat with Claude AI Free – Your Super-Smart AI Buddy

It's like having a super-smart buddy that is always there to help you write stories,…

4 months ago

Best Festivals UK 2025 [Free Guide Included]

The UK is known for its rich history, diverse culture, and most of all  its…

4 months ago

Bank Holidays 2025 UK – Plan Your Perfect Long Weekends

Do you have a plan for your next holiday? Being aware of the Bank Holidays within the…

4 months ago