หากคุณต้องการสร้างรายการดรอปดาวน์ของรายการและเปิดใช้งานรายการในรายการที่ผู้ใช้จะเลือก คุณสามารถใช้วิดเจ็ต Combobox วิดเจ็ต Combobox ช่วยให้คุณสร้างรายการดรอปดาวน์ซึ่งคุณสามารถเลือกรายการได้ทันที อย่างไรก็ตาม หากคุณต้องการรับดัชนีของรายการที่เลือกในวิดเจ็ตคอมโบบ็อกซ์ คุณสามารถใช้ get() กระบวนการ. get() วิธีคืนค่าจำนวนเต็มของรายการที่เลือกซึ่งเรียกว่าดัชนีของรายการ
ตัวอย่าง
มาดูตัวอย่างกันว่ามันทำงานอย่างไร ในตัวอย่างนี้ เราได้สร้างรายการวันของสัปดาห์ในรายการแบบเลื่อนลง และเมื่อใดก็ตามที่ผู้ใช้เลือกวันจากรายการแบบเลื่อนลง โปรแกรมจะพิมพ์และแสดงดัชนีของรายการที่เลือกบนวิดเจ็ตป้ายกำกับ ในการพิมพ์ดัชนี เราสามารถเชื่อมสตริงโดยพิมพ์ดัชนีที่กำหนดลงในสตริง
# Import the required libraries from tkinter import * from tkinter import ttk # Create an instance of tkinter frame or window win = Tk() # Set the size of the window win.geometry("700x350") # Create a function to clear the combobox def clear_cb(): cb.set('') # Define Days Tuple days= ('Sun','Mon','Tue','Wed','Thu','Fri','Sat') # Function to print the index of selected option in Combobox def callback(*arg): Label(win, text= "The value at index " + str(cb.current()) + " is" + " "+ str(var.get()), font= ('Helvetica 12')).pack() # Create a combobox widget var= StringVar() cb= ttk.Combobox(win, textvariable= var) cb['values']= days cb['state']= 'readonly' cb.pack(fill='x',padx= 5, pady=5) # Set the tracing for the given variable var.trace('w', callback) # Create a button to clear the selected combobox text value button= Button(win, text= "Clear", command= clear_cb) button.pack() win.mainloop()
ผลลัพธ์
การเรียกใช้โค้ดด้านบนจะแสดงวิดเจ็ตคอมโบบ็อกซ์พร้อมรายการวัน เมื่อใดก็ตามที่คุณเลือกวันจากรายการ มันจะพิมพ์ดัชนีและรายการที่เกี่ยวข้องบนวิดเจ็ตป้ายกำกับ