Tkinter- 从列表框中删除多个选择



我很早就来了,这家伙帮我写了一个代码,让我在列表框中选择什么

def selecionado(evt):
    global ativo
    a=evt.widget
    b=a.curselection()
    if len(b) > 0:
        seleção=a.curselection()[0]
         sel_text=a.get(seleção)
         ativo=[a.get(i) for i in a.curselection()]
    else:
        ativo=[]

但是后来我删除列表框中选择的任何内容的代码不再起作用,我不知道该怎么做。我只有这个

def remover_membro(lista,part):
    lista.delete(ativo)

返回此错误

_tkinter.TclError: bad listbox index

我想删除在列表"lista"和位于"部分"中的文件中选择的任何内容,如下所示:

名称\t代码
名称\t代码
名称\t代码

变量"ativo"是一个列表,它已经选择具有这种格式的名称和代码

列表框删除需要索引,而不是列表(或任何其他数据类型)。假设ativo是一个索引列表(特别是整数),remover_membro应该看起来更像

for i in ativo:
    lista.delete(i)

如果ativo不是整数(即它是项目的内容),您可以将索引存储在单独的列表中,因为.curselection()给出了索引(或者您只能根据需要通过索引列表获取字符串)

相关内容

  • 没有找到相关文章