如何直接修改 TKinter 列表框中的特定项目?

tkinterpythongui-programming更新于 2024/2/1 19:24:17

Tkinter 是一个基于 Python 的 GUI 应用程序开发库,通常用于构建有用的功能性桌面应用程序。 Listbox 小部件是另一个 tkinter 小部件,用作容器以列表框的形式显示项目列表。

要在列表框小部件中定义项目列表,您需要创建一个 Listbox(root, width, height, **options) 的构造函数。您可以插入要在列表框中显示的任意数量的项目。

假设您想要修改 tkinter 列表框中的特定项目,那么您可以先创建一个按钮来从要修改的列表中选择该项目,然后调用 delete() 方法从中删除任何现有值。删除值后,您可以insert()在列表框中插入新项目。让我们举个例子来了解它的工作原理。

示例

# 导入所需的库
from tkinter import *
from tkinter import ttk

# 创建 tkinter 框架或窗口的实例
win = Tk()

# 设置窗口的大小
win.geometry("700x350")

# 创建列表框小部件
lb = Listbox(win, width=100, height=10, background="purple3", foreground="white", font=('Times 13'), selectbackground="white")

lb.pack()

# 选择列表项并删除该项目首先
# 一旦列表项被删除,
# 我们可以在列表框中插入一个新项
def edit_current():
   for item in lb.curselection():
      lb.delete(item)
      lb.insert("end", "foo")

# 在列表框中添加项目
lb.insert("end", "item1", "item2", "item3", "item4", "item5")

# 添加按钮以编辑和删除列表框项目
ttk.Button(win, text="Edit", command=edit_current).pack()

win.mainloop()

在此示例中,我们使用列表框小部件创建了一个项目列表。我们创建了一个名为"编辑"的按钮,该按钮基本上可以修改所选列表项的现有值。使用此功能,您可以替换/修改 Listbox 小部件中列表中任何项目的值。

输出

一旦执行,它将生成以下输出窗口 −

现在,从列表中选择一个项目并单击"编辑"按钮。假设您选择"item5"并单击"编辑",则该特定条目将被"foo"替换。


相关文章


有用资源