【发布时间】:2012-11-28 11:40:18
【问题描述】:
我对 Python 非常陌生,无法理解如何仅捕获从列表框中选择的一项,更不用说捕获多个项了。我特别不明白程序何时记录了我选择的项目,因为没有带有列表框的“命令”选项。我认为是这样的。我真的不明白绑定。我认为这是我的问题(以及其他问题!)。
以下代码是从我的“app”类中提取的。
l = Listbox(self, height=10, selectmode=EXTENDED)
# Selectmode can be SINGLE, BROWSE, MULTIPLE or EXTENDED. Default BROWSE
l.grid(column=0, row=11, sticky=(N,W,E,S))
s = Scrollbar(self, orient=VERTICAL, command=l.yview)
s.grid(column=0, row=11, sticky=(N,S,E))
l['yscrollcommand'] = s.set
for i in range(1,101):
l.insert('end', 'Line %d of 100' % i)
self.ichoose = l.curselection()
正如各位专家所意识到的,当我打印 app.ichoose 时,我只会得到一个空元组。 我需要做什么? 谢谢, 约翰·罗兰
【问题讨论】:
-
你必须告诉我们什么是滚动条和列表框。你用的是什么库?
-
我使用的是 Python 2.6.6 和 Tk 8.5 滚动条和列表框是 Tk 库中的小部件(当然我已经导入了)。
-
这并不明显,因为几乎每个 gui 包中都有 ListBox 和 Scrollbar...
-
@JoranBeasley:如果你对Tkinter很熟悉,很明显代码就是Tkinter代码。