如何更新 ttk.OptionsMenu (python, tkinter, ttk) 中的下拉选项

问题描述

我找到了大量关于如何使用 tkinter 更新 OptionsMenu 对象的文档,但由于围绕我的 mac OS 版本存在各种问题,我一直在使用 ttk 来构建我的项目,但当它出现时我发现自己被难住了更新选项菜单

我的选项来自使用以下代码添加的列表:

dropdown_menu = ttk.OptionMenu(root,dropdown_menu_text,dropdown_options[0],*dropdown_options)

并且我使用单独的方法来更新 dropdown_options 变量的内容。根据我发现的信息,使用标准 tk 更新选项菜单基本上包括清除选项,然后循环我更新的列表并再次添加每个选项。

是不是和ttk类似的逻辑?

解决方法

事实证明,经过更多的挖掘,我自己找到了解决方案,而且比我预期的要简单得多。原来答案只是添加一行

dropdown_menu.set_menu(dropdown_options[0],* dropdown_options) 

假设 dropdown_options 是您更新的列表!