Tiện ích tùy chọn ttk bắt đầu bằng tất cả giá trị của nó trong menu thả xuống. Khi chọn bất kỳ giá trị nào, giá trị đầu tiên trong danh sách biến mất, không bao giờ xuất hiện trở lại ...tùy chọn đầu tiên tùy chọn tkinter biến mất
Có ai biết tại sao không? Đây có phải là một tính năng của thiết kế widget không? Hãy thử nó với những điều sau:
import tkinter.ttk as ttk
import tkinter as tk
a = tk.Tk()
options = ['1', '2', '3']
value = tk.StringVar()
masterframe = ttk.Frame()
masterframe.pack()
dropdown = ttk.OptionMenu(masterframe, value, *options)
dropdown.pack()
a.mainloop()
Note - một người dùng khác hỏi cùng một câu hỏi ở đây: OptionMenu won't show the first option when clicked (Tkinter)
Họ dường như to've tìm thấy một workaround, nhưng không hiểu tại sao nó đã xảy ra.
CẬP NHẬT: thực tế hành vi này chỉ xuất hiện khi sử dụng tiện ích ttk. Các widget tk hoạt động tốt (mặc dù nhìn rất xấu xí).
Liên kết đó dường như đã chết. –
Trong khi cách giải quyết của bạn hoạt động, nó không phải là một mô tả rất tốt về vấn đề này. 'ttk.OptionMenu' mong đợi một giá trị mặc định sau đối số biến và trước danh sách các giá trị. Trong khi giải pháp của bạn hoạt động, nó che khuất những gì đang thực sự xảy ra. –