Computer >> Máy Tính >  >> Lập trình >> Python

Làm cách nào để xóa phần trường văn bản của ttk.Combobox trong tkinter?

Tiện ích Combobox là một trong những tiện ích đa năng trong tkinter được sử dụng để tạo danh sách thả xuống chứa một số giá trị trong đó. Bạn có thể chọn một giá trị từ danh sách thả xuống được thay thế bằng giá trị mặc định của tiện ích con combobox. Bạn có thể tạo tiện ích con combobox bằng cách khởi tạo hàm tạo của Combobox (gốc, chiều rộng, văn bản) tiện ích con.

Hãy xem xét trường hợp, nếu người dùng muốn xóa giá trị đã chọn khỏi tiện ích con combobox, cách duy nhất bạn có thể làm là đặt giá trị của tiện ích con combobox là NULL bằng cách sử dụng set ('') phương pháp. Ví dụ sau minh họa cách thực hiện.

Ví dụ

# 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')

# 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)

# Create a button to clear the selected combobox text value
button = Button(win, text= "Clear", command= clear_cb)
button.pack()

win.mainloop()

Đầu ra

Chạy đoạn mã trên sẽ hiển thị một cửa sổ có tiện ích combobox và nút "Xóa" để xóa giá trị đã chọn khỏi tiện ích combobox.

Làm cách nào để xóa phần trường văn bản của ttk.Combobox trong tkinter?

Bây giờ hãy nhấp vào nút "Xóa" để xóa giá trị đã chọn khỏi tiện ích hộp kết hợp.

Làm cách nào để xóa phần trường văn bản của ttk.Combobox trong tkinter?