如何更改列表框项目的文本?
问题描述
我有一个装满项目的 Listbox
,我需要更改项目的文本.使用项目配置我只能找出如何更改颜色.
I have a Listbox
full of items, and I need to change an item's text. Using item configure I can only find out how to change colors.
如何更改 Tkinter Listbox
上的项目文本?
How can I change the item text on a Tkinter Listbox
?
解决方案
要更改文本,您必须删除并在适当的索引处重新添加项目.
To change the text you will have to delete and re-add an item at the proper index.
这是一个人为的例子,它不断更新列表框中的第二项:
Here is a contrived example that continuously updates the second item in the listbox:
import Tkinter as tk
import time
class Example(tk.Frame):
def __init__(self, parent):
tk.Frame.__init__(self, parent)
self.lb = tk.Listbox(self)
self.lb.pack(fill="both", expand=True)
self.lb.insert("end", "item 1","the current time", "item 3")
self.after(1000, self._update_listbox)
def _update_listbox(self):
self.lb.delete(1)
self.lb.insert(1, time.asctime())
self.after(1000, self._update_listbox)
if __name__ == "__main__":
root = tk.Tk()
Example(root).pack(fill="both", expand=True)
root.mainloop()
相关文章