我的环境是运行在Windows 10上的Python 2.7。
我正在编写一个Tkinter应用程序,该应用程序将包含一个“最新文件”菜单,以方便用户使用。要创建该菜单,我不仅需要具有动态添加,删除和重新排序菜单项的功能,而且还需要识别存在的菜单项和这些菜单项是什么。支持将文件列表“加帽”为(例如)五个最新文件的逻辑,在将新文件添加到列表时删除较旧的文件。它还将支持“清除历史记录”功能,删除所有现有条目。
添加,删除和重新排列单个已知项目的菜单内容是一件容易的事; add_command()
,delete()
和insert_command()
方法将涵盖这些用例。但是我已经检查了几个在线引用,但找不到一个可以告诉我菜单当前内容的方法或属性,甚至无法告诉我菜单有多少个条目当前包含。
是否存在这样的属性/方法?还是我必须应用大锤方法,例如反复执行entrycget()
方法,逐个索引直到遇到异常?
答案 0 :(得分:2)
您可以将index
方法与参数"end"
一起使用,以获取最后一项的索引。
last_item = the_menu.index('end')
然后可以使用它来遍历菜单中的所有项目。