ধরি, Tkinter ফ্রেমে একটি বাটন এবং একটি লেবেল তৈরি করা হয়েছে। টাস্ক হলো বাটন টেক্সটকে মেইন উইন্ডোর সাথে ডাইনামিক্যালি রিসাইজ করার অনুমতি দেওয়া। বাটন তৈরি করতে বাটন উইজেট ব্যবহার করা যায়। তবে বাটন লেবেল ডাইনামিক্যালি তৈরি করার জন্য অন্যান্য ফাংশনও রয়েছে।
এই উদাহরণে দুটি বাটন কিছু লেবেলসহ তৈরি করা হবে। Grid মেথড যেমন rowconfigure() এবং columnconfigure() ব্যবহার করে মেইন উইন্ডো বা রুট ডাইনামিক্যালি রিসাইজ করা হবে।
বাটন টেক্সট ডাইনামিক করতে bind('
প্রথমে বাটন টেক্সট বিডথ অনুযায়ী রিসাইজ করব, তারপর হাইট অনুযায়ী।
উদাহরণ
from tkinter import *
win = Tk()
win.geometry("700x300")
# ডাইনামিক্যালি উইন্ডো এবং উইজেট রিসাইজ
Grid.rowconfigure(win, index=0, weight=1)
Grid.columnconfigure(win, index=0, weight=1)
# বাটন টেক্সট সাইজ পরিবর্তন করার ফাংশন
def resize(e):
# বাটনের বিডথ পাওয়া
w = e.width / 10
# ডাইনামিক্যালি বাটন টেক্সট রিসাইজ
b.config(font=("Times New Roman", int(w)))
# হাইট রিসাইজ
if e.height <= 300:
b.config(font=("Times New Roman", 30))
elif e.height < 100:
b.config(font=("Time New Roman", 10))
# বাটন তৈরি
b = Button(win, text="Python")
b.grid(row=0, column=0, sticky="nsew")
win.bind('', resize)
win.mainloop()
আউটপুট
উপরের কোড রান করলে "Python" টেক্সটসহ একটি বাটন তৈরি হবে যা ডাইনামিক্যালি রিসাইজ করা যাবে।
