আপডেট করুন মেথড সমস্ত মুলতুবি থাকা নিষ্ক্রিয় কাজ, দেখা না হওয়া ইভেন্ট, কলিং ফাংশন এবং কলব্যাক প্রক্রিয়া করে। পদ্ধতিটি সমস্ত ইভেন্ট বা কাজ আপডেট এবং প্রক্রিয়াকরণের জন্য প্রযোজ্য যেমন উইজেটগুলি পুনরায় অঙ্কন করা, জ্যামিতি ব্যবস্থাপনা, উইজেট সম্পত্তি কনফিগার করা ইত্যাদি৷
এটি আরও নিশ্চিত করে যে যদি অ্যাপ্লিকেশনটির কোনো মুলতুবি কাজ থাকে তবে এটি কেবলমাত্র সেই মানটি আপডেট বা রিফ্রেশ করবে যা অ্যাপ্লিকেশনটির পুরো অংশকে প্রভাবিত করে। আপডেট ব্যবহার করে একটি একক মুলতুবি কাজের জন্য দুষ্ট হবে, এইভাবে Tkinter এছাড়াও update_idletasks() প্রদান করে পদ্ধতি এটি শুধুমাত্র নিষ্ক্রিয় মুলতুবি থাকা টাস্ক আপডেট করে যা স্থিতিশীল বা কোনো কারণে অ্যাপ্লিকেশনে আপডেট হচ্ছে না। এটি অন্য কোন ইভেন্ট বা কলব্যাক প্রক্রিয়া না করে মুলতুবি থাকা সমস্ত ইভেন্টকে কল করে৷
আপডেট() এবং update_idletask() পদ্ধতি যেকোন মুলতুবি বা নিষ্ক্রিয় কাজ প্রক্রিয়াকরণের জন্য উপযোগী। যাইহোক, শুধুমাত্র update() এর মধ্যে পার্থক্য এবং update_idletasks() এটা হল আপডেট() update_idletasks() অ্যাপ্লিকেশনে উপস্থিত সমস্ত ইভেন্ট প্রক্রিয়া করে শুধুমাত্র সেই ইভেন্টগুলি প্রক্রিয়া করে যা চলমান বা স্থিতিশীল নয়৷
উদাহরণ
আমরা update_idletasks() এর ব্যবহার এবং প্রয়োগ বুঝতে পারি এই উদাহরণের মাধ্যমে পদ্ধতি।
# Import the tkinter library from tkinter import * from tkinter import ttk import time # Create an instance of tkinter frame win= Tk() # Set the size of the Tkinter window win.geometry("700x350") def add_Text(): for i in range(10): label.config(text= "The loops starts from 1 to "+ str(i)) # Wait for two seconds win.update_idletasks() time.sleep(2) label.config(text= i) # Add a label text label= Label(win, text="Original Text", font= ('Aerial 16')) label.pack(pady= 30) # Add a button to update the Label text ttk.Button(win, text="Change Text", command= add_Text).pack(pady= 40) win.mainloop()
আউটপুট
উপরের কোডটি চালানো হলে একটি লেবেল উইজেট এবং একটি বোতাম সহ একটি উইন্ডো প্রদর্শিত হবে৷
যখন আমরা বোতাম টিপুন, তখন লেবেল উইজেটটি লুপের প্রদত্ত পরিসরে স্বয়ংক্রিয়ভাবে আপডেট হয়ে যায়।