मान लें कि हमने टिंकर फ्रेम में एक बटन और एक लेबल बनाया है। कार्य बटन टेक्स्ट को अपनी मुख्य विंडो में गतिशील रूप से आकार बदलने की अनुमति देना है। हम बटन विजेट का उपयोग करके बटन बना सकते हैं . हालांकि, बटन लेबल को गतिशील रूप से बनाने के लिए कई अन्य कार्यों का उपयोग किया जाता है।
इस उदाहरण में, हम दो बटन बनाएंगे जिनमें कुछ लेबल होंगे। ग्रिड विधि . का उपयोग करके जैसे rowconfigure() और कॉलमकॉन्फ़िगर करें() , हम गतिशील रूप से मुख्य विंडो या रूट का आकार बदलेंगे।
बटन टेक्स्ट को गतिशील बनाने के लिए, हम बाइंड(<कॉन्फ़िगर>, कमांड) का उपयोग करेंगे विधि जो हमें कार्यों और विधि को एक साथ बांधने में मदद करेगी। हम एक कॉलबैक फ़ंक्शन pass पास कर सकते हैं जो आम तौर पर विजेट के नए स्थान और एक सहायक फ़ंक्शन . को संदर्भित करता है जो विंडो के आकार के अनुसार बटन टेक्स्ट में परिवर्तन को संशोधित करता है।
सबसे पहले, हम बटन टेक्स्ट को उसकी चौड़ाई और फिर उसकी ऊंचाई के अनुसार आकार देंगे।
उदाहरण
from tkinter import * win= Tk() win.geometry("700x300") #Dynamically resize the window and its widget Grid.rowconfigure(win, index=0, weight=1) Grid.columnconfigure(win, index=0, weight=1) #Define the function to change the size of the button text def resize(e): #Get the width of the button w= e.width/10 #Dynamically Resize the Button Text b.config(font=("Times New Roman",int(w))) #Resize the height if e.height <=300: b.config(font= ("Times New Roman",30)) elif e.height<100: b.config(font= ("Time New Roman", 10)) #Let us Create buttons, b=Button(win,text="Python") b.grid(row= 0, column=0, sticky= "nsew") win.bind('<Configure>', resize) win.mainloop()
आउटपुट
उपरोक्त कोड को चलाने से "पायथन" टेक्स्ट वाला एक बटन बन जाएगा और इस बटन को गतिशील रूप से आकार दिया जा सकता है।