Tkinter ক্যানভাস উইজেট টিকিন্টার লাইব্রেরির বহুমুখী উইজেটগুলির মধ্যে একটি। এটি বিভিন্ন আকার, ছবি এবং অ্যানিমেটিং বস্তু তৈরি করতে ব্যবহৃত হয়। আমরা move() ব্যবহার করে ক্যানভাস উইজেটে ছবিগুলিকে একটি নির্দিষ্ট দিকে সরাতে পারি পদ্ধতি।
ক্যানভাসে বস্তুটিকে সরানোর জন্য মুভ(ইমেজ, x,y) পদ্ধতিতে একটি প্যারামিটার হিসাবে চিত্র এবং স্থানাঙ্কগুলিকে সংজ্ঞায়িত করুন। অবস্থান পরিবর্তন বা সরানোর জন্য আমরা বিশ্বব্যাপী ছবি ঘোষণা করি।
আমাদের ছবিকে ক্যানভাসের মধ্যে স্থানান্তরিত করার জন্য আমরা এই পদক্ষেপগুলি অনুসরণ করতে পারি,
-
প্রথমে, ক্যানভাস উইজেট সংজ্ঞায়িত করুন এবং এতে ছবি যোগ করুন।
-
চিত্রটিকে ক্যানভাসের মধ্যে গতিশীল করার অনুমতি দেওয়ার জন্য মুভ() ফাংশনটি সংজ্ঞায়িত করুন।
-
মাউস বোতামগুলিকে এমন ফাংশন দিয়ে আবদ্ধ করুন যা চিত্রগুলিকে ক্যানভাসের মধ্যে সরানোর অনুমতি দেয়৷
উদাহরণ
# Import the required libraries from tkinter import * from PIL import Image, ImageTk # Create an instance of tkinter frame win = Tk() # Set the size of the tkinter window win.geometry("700x350") # Define a Canvas widget canvas = Canvas(win, width=600, height=400, bg="white") canvas.pack(pady=20) # Add Images to Canvas widget image = ImageTk.PhotoImage(Image.open('logo.png')) img = canvas.create_image(250, 120, anchor=NW, image=image) def left(e): x = -20 y = 0 canvas.move(img, x, y) def right(e): x = 20 y = 0 canvas.move(img, x, y) def up(e): x = 0 y = -20 canvas.move(img, x, y) def down(e): x = 0 y = 20 canvas.move(img, x, y) # Define a function to allow the image to move within the canvas def move(e): global image image = ImageTk.PhotoImage(Image.open('logo.png')) img = canvas.create_image(e.x, e.y, image=image) # Bind the move function canvas.bind("<B1-Motion>", move) win.mainloop()কে বাঁধুন
আউটপুট
উপরের কোডটি চালানোর ফলে একটি উইন্ডো প্রদর্শিত হবে যেখানে একটি চিত্র রয়েছে যা মাউস বোতাম ব্যবহার করে উইন্ডো জুড়ে সরানো যেতে পারে।
এখন, ক্যানভাসে ক্লিক করুন এবং আপনার মাউস দিয়ে বস্তুটিকে চারপাশে টেনে আনুন।