একটি GUI অ্যাপ্লিকেশন তৈরির কথা বিবেচনা করুন যেখানে মাউস বাটনে ক্লিক করলে কোয়ার্ডিনেট স্টোর করে দুটি দিয়ে गये পয়েন্টের মাঝে একটি লাইন তৈরি করবে। Tkinter ইভেন্ট প্রদান করে যা ব্যবহারকারীকে কি বা বাটন ফাংশনের সাথে বাইন্ড করতে দেয়।
দুটি পয়েন্টের মাঝে লাইন আঁকতে আমরা এই সাধারণ ধাপগুলো ফলো করতে পারি:
একটি ক্যানভাস উইজেট তৈরি করুন এবং উইন্ডোতে প্রদর্শনের জন্য প্যাক করুন।
একটি draw_line() ফাংশন ডিফাইন করুন যা ব্যবহারকারী ক্লিক ইভেন্ট করলে ইভেন্ট হিসেবে কাজ করবে।
একটি গ্লোবাল ভেরিয়েবল তৈরি করুন যা ক্যানভাসে ক্লিক সংখ্যা গণনা করবে।
যদি কাউন্ট দুটি হয়, তবে প্রথম এবং দ্বিতীয় কোয়ার্ডিনেটের মাঝে একটি লাইন আঁকুন।
মাউস বাটনকে কলব্যাক ফাংশনের সাথে বাইন্ড করুন ফাংশনের পূর্ণ নিয়ন্ত্রণ পেতে।
উদাহরণ
# প্রয়োজনীয় লাইব্রেরি ইমপোর্ট করুন
from tkinter import *
from tkinter import ttk
# Tkinter ফ্রেম বা উইন্ডোর ইনস্ট্যান্স তৈরি করুন
win = Tk()
# উইন্ডোর সাইজ সেট করুন
win.geometry("700x350")
# দুটি পয়েন্টের মাঝে লাইন আঁকির ফাংশন ডিফাইন করুন
def draw_line(event):
global click_num
global x1, y1
if click_num == 0:
x1 = event.x
y1 = event.y
click_num = 1
else:
x2 = event.x
y2 = event.y
# দেয়া কোয়ার্ডিনেটে লাইন আঁকুন
canvas.create_line(x1, y1, x2, y2, fill="green", width=10)
# একটি ক্যানভাস উইজেট তৈরি করুন
canvas = Canvas(win, width=700, height=350, background="white")
canvas.grid(row=0, column=0)
canvas.bind('', draw_line)
click_num = 0
win.mainloop()
আউটপুট
উপরের কোডটি রান করলে একটি উইন্ডো দেখাবে। যদি আমরা ক্যানভাস উইজেটে দুবার যেকোনো জায়গায় ক্লিক করি, তবে ক্যানভাসে একটি লাইন আঁকবে।
