我有一个列表框,希望能够从该列表框中返回多个选择。
我尝试将“ seltext”变量更改为list(map(int()())))格式,但出现了错误的列表框索引错误。
我不确定该如何处理;任何帮助表示赞赏。
我当前识别所选变量的方式:
def selecting(self,event):
sel = self.lbox.curselection()
seltext = self.lbox.get(sel)
self.labelVariable.set(seltext)
我分配单个选择的方式。
def OnButtonClick(self):
global confirmedsel
confirmedsel = ""
sel = self.lbox.curselection()
seltext = self.lbox.get(sel)
confirmedsel = seltext
print(confirmedsel)
app.quit()
答案 0 :(得分:0)
def selecting(self,event):
sel = self.lbox.curselection()
seltext = list(map(int,self.lbox.get(sel)))
self.labelVariable.set(seltext)
您尝试过吗? 您可以在此处查找curselection的用法: http://effbot.org/tkinterbook/listbox.htm
答案 1 :(得分:0)
列表框的curselection
方法返回一个表示选定项目的索引元组。您只需要遍历该列表并调用get
方法即可获取每个元素。
使用列表推导在一行中执行此操作,这将导致一个列表,其中包含作为字符串的所选项目的值:
seltext = [self.lbox.get(index) for index in self.lbox.curselection()]
如果发现列表理解难以理解,这是一个使用简单循环的解决方案:
results = []
for index in self.lbox.curselection():
results.append(self.lbox.get(index))