是否有"包含" Tkinter Listbox小部件的方法

时间:2015-03-12 11:52:47

标签: python tkinter listbox

python Tkinter是否有listbox.contains()类似于C#方法?

我知道答案可能不是,但我需要检查列表框项目中的前6个字符是否存在,

2 个答案:

答案 0 :(得分:2)

没有。但是,所有基本功能都可供您自己编写。它看起来像这样:

class CustomListbox(tk.Listbox):
    def __contains__(self, str):
        return str in self.get(0, "end")

lb = CustomListbox(...)
...
lb.insert("end", "foo")
...
if "foo" in lb:
    print "success"

或者,使用lambda将函数附加到标准列表框:

lb = tk.Listbox(...)
lb.__contains__ = lambda str: str in lb.get(0, "end")
...
lb.insert("end", "foo")
...
if "foo" in lb:
    print "success"

答案 1 :(得分:0)

你可以写一个这样的方法:

def contain(item):
    iscontain= item in listbox.get(0, "end")
    return iscontain