Tkinter-এ, ব্যবহারকারীরা দুটি মৌলিক পাঠ্য ইনপুট উইজেট ব্যবহার করে পাঠ্য ইনপুট করতে পারে - টেক্সট উইজেট এবং এন্ট্রি উইজেট পাঠ্য উইজেটটি সাধারণত মাল্টিলাইন ব্যবহারকারীর ইনপুট গ্রহণ করতে ব্যবহৃত হয়, যেখানে একটি এন্ট্রি উইজেট, ব্যবহারকারী শুধুমাত্র একলাইন পাঠ্য টাইপ করতে পারেন।
আপনি এই উইজেটগুলি কাস্টমাইজ করতে পারেন এবং অন্তর্নির্মিত লাইব্রেরি ফাংশন এবং পদ্ধতিগুলি ব্যবহার করে অতিরিক্ত কার্যকারিতা যোগ করতে পারেন। একটি এন্ট্রিতে ইনপুট যাচাই করতে উইজেট, আপনি রেজিস্টার() ব্যবহার করতে পারেন পদ্ধতি এই পদ্ধতিটি একটি স্ট্রিং প্রদান করে যা পরবর্তী পর্যায়ে ফাংশনটি কল করতে ব্যবহার করা যেতে পারে।
একটি এন্ট্রিতে ইনপুট যাচাই করতে উইজেট, config(**বিকল্প) ব্যবহার করুন পদ্ধতি এবং পাস করুন বৈরীকরণ এবং validatecommand আর্গুমেন্ট।
-
প্রমাণিত করুন৷ − এটি নির্দেশ করে যখন একটি প্রদত্ত এন্ট্রি বা টেক্সট উইজেটে ইনপুট যাচাই করার জন্য কলব্যাক ফাংশনকে কল করতে হয়। উদাহরণস্বরূপ, "কী"৷ মানটি নির্দিষ্ট করে যে যখনই একজন ব্যবহারকারী একটি কী টিপে (কীবোর্ড থেকে), কলব্যাক ফাংশন কল করা হবে। এছাড়াও আপনি অন্যান্য বিকল্পগুলিও ব্যবহার করতে পারেন যেমন ফোকাস, ফোকাসইন, ফোকাসআউট, কোনটিই, সব, ইত্যাদি।
-
validatecommand - এটি সেই মানটি নির্দিষ্ট করে যা কলব্যাক ফাংশন দ্বারা প্রত্যাবর্তিত মানের উপর নির্ভর করে। validatecommand='f'-এ মান নির্দিষ্ট করতে , আপনি বিভিন্ন কলব্যাক প্রতিস্থাপন কোড ব্যবহার করতে পারেন যা বলে যে কলব্যাক ফাংশনগুলি কীভাবে এবং কী মানগুলি ফেরত দেয়৷
একটি এন্ট্রি উইজেটে ইনপুট যাচাই করতে, আপনাকে কলব্যাক ফাংশনটি নিবন্ধন করতে হবে এবং কলব্যাক ফাংশনে সংজ্ঞায়িত শর্ত পরীক্ষা করে এমন আর্গুমেন্ট পাস করে এন্ট্রি উইজেট কনফিগার করতে হবে৷
উদাহরণ
আসুন এখন একটি উদাহরণ বিবেচনা করি যেখানে আমরা একটি এন্ট্রি উইজেটকে যাচাই করতে চাই যাতে একটি নির্দিষ্ট পাঠ্য ব্যবহারকারী দ্বারা মুছে ফেলা যায় না। উপরন্তু, আমরা startswith("string") দিয়ে স্ট্রিং চেক করে এটিকে অপসারণযোগ্য করে তুলতে পারি ফাংশন।
# tkinter import থেকে প্রয়োজনীয় লাইব্রেরি আমদানি করুন *# tkinter windowwin এর একটি উদাহরণ তৈরি করুন =Tk()win.geometry("700x350")# একটি ফাংশন সংজ্ঞায়িত করুন যাতে একটি টেক্সট নন-রিমুভেবলডেফ make_non_removable(টেক্সট):রিটার্ন text.startswith( "আপনার ইমেল আইডি লিখুন:")# একটি এন্ট্রি উইজেটেন্ট্রি তৈরি করুন=Entry(win, bg="black", fg="white")entry.pack(side="top", fill="x")# একটি ডিফল্ট যোগ করুন textentry.insert(END, "আপনার ইমেল আইডি লিখুন:")validate_entry=(win.register(make_non_removable), '%P')entry.config(validate='key', validatecommand=validate_entry)win.mainloop()পূর্বে>আউটপুট
সঞ্চালনের সময়, এটি একটি উইন্ডোতে একটি এন্ট্রি উইজেট প্রদর্শন করবে একটি ডিফল্ট অপসারণযোগ্য পাঠ্য সহ "আপনার ইমেল আইডি লিখুন:"৷