如何从列表框中删除多个选择

2024-10-03 13:26:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我得到了这个代码,它把变量ativo放入列表框中所选的内容中

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

我怎样才能创建一个可以删除这个的函数,因为ativo返回这个:

["Name1\t Code1\n"]
["Name1\t Code1\n", 'Name2\t Code2\n']

但是如果我打印列表框,就会出现这个

.59070320.59070384

即使列表框以正确的方式出现在我的图形界面中,名称和对应的代码如下:

姓名代码

姓名代码

所以,我不知道如何删除选中的内容,请帮助我


Tags: 代码内容lenifdefwidgetglobalevt
1条回答
网友
1楼 · 发布于 2024-10-03 13:26:29

只是使用yourlistboxname.delete(索引)

def removeclicked(evt):
w = evt.widget
index = int(w.curselection()[0])
label = w.get(index)
yourlistboxname.delete(index)

要绑定evt,请在创建小部件的位置添加

yourlistboxname.bind('<<ListboxSelect>>',removeclicked)

这个方法很容易找到,所以我可能误解了你的问题。您不需要删除代码中的条目,只需要获取或更改条目。 此页应有助于:

相关问题 更多 >