কম্পিউটার

Tkinter Python-এ ক্লিক ইভেন্টে ক্যানভাসে একটি বিন্দু কীভাবে আঁকবেন?


একটি GUI অ্যাপ্লিকেশন তৈরি করার ক্ষেত্রে একটি কেস বিবেচনা করুন যেমন আমরা যখন একটি মাউস বোতাম দিয়ে উইন্ডোতে ক্লিক করি, তখন এটি স্থানাঙ্ক সংরক্ষণ করে এবং একটি বিন্দু আঁকে। Tkinter ইভেন্টগুলি প্রদান করে যা ব্যবহারকারীকে ফাংশনগুলির সাথে কী বা বোতামগুলিকে আবদ্ধ করতে দেয়৷

ক্লিক ইভেন্টে একটি বিন্দু আঁকতে, আমরা এই সাধারণ পদক্ষেপগুলি অনুসরণ করতে পারি -

  • একটি ক্যানভাস উইজেট তৈরি করুন এবং উইন্ডোতে প্রদর্শনের জন্য এটি প্যাক করুন।

  • একটি ফাংশন draw_dot() সংজ্ঞায়িত করুন যেটি ইভেন্ট হিসাবে কাজ করে যখন ব্যবহারকারী ক্লিক ইভেন্ট করে।

  • একটি গ্লোবাল ভেরিয়েবল তৈরি করুন যা ক্যানভাসে ক্লিকের সংখ্যা গণনা করে।

  • যদি গণনা দুটি হয়, তাহলে প্রথম এবং দ্বিতীয় স্থানাঙ্কের মধ্যে একটি রেখা আঁকুন।

  • ফাংশনের উপর সম্পূর্ণ নিয়ন্ত্রণ পেতে কলব্যাক ফাংশনের সাথে মাউস বোতামটি আবদ্ধ করুন৷

উদাহরণ

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

# Create an instance of tkinter frame or window
win=Tk()

# Set the size of the window
win.geometry("700x350")

# Define a function to draw the line between two points
def draw_line(event):
   x1=event.x
   y1=event.y
   x2=event.x
   y2=event.y
   # Draw an oval in the given co-ordinates
   canvas.create_oval(x1,y1,x2,y2,fill="black", width=20)

# Create a canvas widget
canvas=Canvas(win, width=700, height=350, background="white")
canvas.grid(row=0, column=0)
canvas.bind('<Button-1>', draw_line)
click_num=0

win.mainloop()

আউটপুট

একটি উইন্ডো প্রদর্শন করতে উপরের কোডটি চালান। আপনি যখন ক্যানভাসের ভিতরে যে কোন জায়গায় ক্লিক করেন, তখন এটি সেই বিন্দুতে একটি বিন্দু আঁকবে।

Tkinter Python-এ ক্লিক ইভেন্টে ক্যানভাসে একটি বিন্দু কীভাবে আঁকবেন?


  1. Tkinter Python ব্যবহার করে একটি বৃত্ত আঁকুন

  2. Tkinter ক্যানভাস কিভাবে সাফ করবেন?

  3. Tkinter Python এ থ্রেড কিভাবে ব্যবহার করবেন?

  4. ক্যানভাস পাইথন টিকিন্টারে কীভাবে একটি চিত্রকে কেন্দ্র করবেন