यदि आप आइटम की ड्रॉपडाउन सूची बनाना चाहते हैं और सूची के आइटम को उपयोगकर्ता द्वारा चुने जाने में सक्षम बनाना चाहते हैं, तो आप Combobox विजेट का उपयोग कर सकते हैं। Combobox विजेट आपको एक ड्रॉपडाउन सूची बनाने की अनुमति देता है जिसमें आइटम की सूची को तुरंत चुना जा सकता है। हालांकि, यदि आप Combobox विजेट में चयनित आइटम का इंडेक्स प्राप्त करना चाहते हैं, तो आप get() मेथड का उपयोग कर सकते हैं। get() मेथड चयनित आइटम का एक पूर्णांक लौटाता है जिसे आइटम का इंडेक्स कहा जाता है।
उदाहरण
आइए देखते हैं कि यह कैसे काम करता है। इस उदाहरण में, हमने सप्ताह के दिनों की एक सूची ड्रॉपडाउन सूची में बनाई है और जब भी उपयोगकर्ता ड्रॉपडाउन सूची से एक दिन चुनता है, तो यह लेबल विजेट पर चयनित आइटम का इंडेक्स प्रिंट और प्रदर्शित करेगा। इंडेक्स प्रिंट करने के लिए, हम दिए गए इंडेक्स को स्ट्रिंग में टाइपकास्ट करके स्ट्रिंग को जोड़ सकते हैं।
# आवश्यक लाइब्रेरी इम्पोर्ट करें
from tkinter import *
from tkinter import ttk
# Tkinter फ्रेम या विंडो का इंस्टेंस बनाएं
win = Tk()
# विंडो का आकार सेट करें
win.geometry("700x350")
# Combobox को क्लियर करने का फ़ंक्शन
def clear_cb():
cb.set('')
# दिनों की टपल परिभाषित करें
days = ('Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat')
# Combobox में चयनित विकल्प का इंडेक्स प्रिंट करने का फ़ंक्शन
def callback(*arg):
Label(win, text="The value at index " + str(cb.current()) + " is " + str(var.get()), font=('Helvetica 12')).pack()
# एक Combobox विजेट बनाएं
var = StringVar()
cb = ttk.Combobox(win, textvariable=var)
cb['values'] = days
cb['state'] = 'readonly'
cb.pack(fill='x', padx=5, pady=5)
# दिए गए वेरिएबल के लिए ट्रेसिंग सेट करें
var.trace('w', callback)
# चयनित Combobox टेक्स्ट मान को क्लियर करने के लिए बटन बनाएं
button = Button(win, text="Clear", command=clear_cb)
button.pack()
win.mainloop()
आउटपुट
उपरोक्त कोड चलाने से दिनों की सूची के साथ एक Combobox विजेट प्रदर्शित होगा। जब भी आप सूची से एक दिन चुनते हैं, तो यह लेबल विजेट पर चयनित आइटम का इंडेक्स और संबंधित आइटम प्रिंट करेगा।
