1

我正在尝试创建一个 python GUI,它采用我创建的列表并将列表项填充到 GUI 上。然后,此 GUI 将使用户能够选择列表中的项目并将它们移动到另一个列表。

因此,在 GUI 中,列表项会在视觉上从一个“表”(table1) 移动到另一个“表”(table2)。两个表之间的两个带有箭头的按钮使用户能够在两个列表之间来回移动项目。最后有一个“继续”按钮,当用户完成他的选择时,它将把 table2 中的所有项目添加到新列表中。

TKinter 是否可以做到这一点,如果可以,是否有人知道有关如何做到这一点的任何好的教程?这个应用程序的其他模块会更容易吗?

4

1 回答 1

2

您要使用的小部件称为列表框。这是来自effbot的片段

from Tkinter import *

master = Tk()

listbox = Listbox(master)
listbox.pack()

listbox.insert(END, "a list entry")

for item in ["one", "two", "three", "four"]:
    listbox.insert(END, item)

mainloop()

不幸的是,我找不到在两个不同的列表框之间移动两个项目的任何示例。

在玩了一点之后,我想出了这个例子,它可以让你在两个不同的列表框之间移动文本。

from Tkinter import *

master = Tk()

listbox = Listbox(master)
listbox.pack()

listbox2 = Listbox(master)

def moveDown():

    move_text = listbox.selection_get()
    curindex = int(listbox.curselection()[0])
    listbox.delete(curindex)
    listbox2.insert(END, move_text)

moveBtn = Button(master, text="Move Down", command=moveDown)
moveBtn.pack()


listbox2.pack()

for item in ["one", "two", "three", "four"]:
    listbox.insert(END, item)

mainloop()
于 2013-07-02T14:21:27.907 回答