Tkinter Listbox 如何判断一个项目是否被选中
Tkinter Listbox How to tell if an item is selected
我正在尝试创建一个简单的 GUI,允许用户按下一个按钮,这将从显示的列表框中删除一个条目。但是,如果没有选择条目,控制台会抛出错误,那么我如何确定用户是否选择了条目。这是我的代码:
selection = self.recipe_list.curselection()
if not selection is None:
self.recipe_list.delete(selection)
else:
print("Nothing to delete!")
它不会像您正在检查的那样返回 None
,而是 returns 一个空字符串 ""
。检查如下:
if selection:
self.recipe_list.delete(selection)
else:
print("Nothing to delete!")
if not self.lstb.curselection() is ():
根据
Tkinter 参考:Python
的 GUI
列表框对象的方法包括:
.curselection()
Returns 包含所选元素的行号的元组,从 0 开始计数。
如果未选择任何内容,returns 一个空元组。
所以你可以做这样的事情
if self.MyListbox.curselection():
index = self.MyListbox.curselection()[0]
我正在尝试创建一个简单的 GUI,允许用户按下一个按钮,这将从显示的列表框中删除一个条目。但是,如果没有选择条目,控制台会抛出错误,那么我如何确定用户是否选择了条目。这是我的代码:
selection = self.recipe_list.curselection()
if not selection is None:
self.recipe_list.delete(selection)
else:
print("Nothing to delete!")
它不会像您正在检查的那样返回 None
,而是 returns 一个空字符串 ""
。检查如下:
if selection:
self.recipe_list.delete(selection)
else:
print("Nothing to delete!")
if not self.lstb.curselection() is ():
根据
Tkinter 参考:Python
的 GUI列表框对象的方法包括:
.curselection()
Returns 包含所选元素的行号的元组,从 0 开始计数。
如果未选择任何内容,returns 一个空元组。
所以你可以做这样的事情
if self.MyListbox.curselection():
index = self.MyListbox.curselection()[0]