[英]python tkinter listbox: adding items
在程序启动时,我将一些项目添加到列表框中,如下所示:
for widget in WidgetNames:
listbox.insert(0, widget)
WidgetNames显然是一些项目的列表,例如“ Button”和“ Canvas”。 问题是,列表框不显示使用上述代码添加的项目。 然而,
for widget in WidgetNames:
listbox.insert(0, widget)
print(listbox.get(0))
打印“按钮”和“画布”,以及
for widget in WidgetNames:
listbox.insert(0, widget)
print(listbox.size())
打印2,这显然是其中包含的正确项目数。 添加项目后显示的所有列表框为空行。 我已经尝试过listbox.see(0)和listbox.index(0),但这没有帮助。 有什么想法为什么不能正确添加项目?
您所显示的代码不是问题,它必须是您未显示的其他代码。 请尝试使用尽可能小的指南针重现您的问题,然后编辑您的答案以包含最少的代码。 这是一个小脚本,用于说明您显示的代码实际上是可以的:
from Tkinter import *
master = Tk()
listbox = Listbox(master)
listbox.pack()
WidgetNames = ['Button', 'Canvas']
for widget in WidgetNames:
listbox.insert(0, widget)
mainloop()
这段代码可以在我的机器上正常运行(Ubuntu 10.4,Python 2.6),并且完全按预期显示了这两个项目(第一个是“画布”)。 如果这个行为不上你的盒子那样,请编辑您的答案提供有关上述箱;-)的微小细节的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.