我正在尝试创建一个python GUI,它获取我创建的列表并将列表项填充到GUI上。然后,该GUI将使用户能够选择列表中的项目并将其移动到另一个列表。
因此,列表项将在GUI中从一个“表”(table1)可视地移动到另一个“table”(table2)。两个表之间的两个按钮带有箭头,使用户能够在两个列表之间来回移动项目。最后有一个“继续”按钮,当用户完成选择时,它会将table2中的所有项目添加到新列表中。
对于TKinter来说这是可能的吗?如果有的话,是否有人知道有关如何这样做的任何好的教程?这个应用程序的其他模块会更容易吗?
答案 0 :(得分: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()