禁用Python ObjectListView中的搜索
我使用wxPython中的ObjectListView来显示几百到几千条记录,每条记录包含一两个字符的文本和一些数字字段。我想禁用ObjectListView的键入搜索功能,因为它对我的目的不是很有用,我想将键用于其他用途。然而,我无法解决如何禁用所有搜索,而不仅仅是将其转移到另一列禁用Python ObjectListView中的搜索,python,wxpython,wxwidgets,Python,Wxpython,Wxwidgets,我使用wxPython中的ObjectListView来显示几百到几千条记录,每条记录包含一两个字符的文本和一些数字字段。我想禁用ObjectListView的键入搜索功能,因为它对我的目的不是很有用,我想将键用于其他用途。然而,我无法解决如何禁用所有搜索,而不仅仅是将其转移到另一列 我想我可以截获一个按键事件并阻止传播,但如果有一个“正确”的方法,这似乎有点像黑客行为。您是否尝试过设置: self.typingSearchesSortColumn = False 就你的OLV来说 通过: i
我想我可以截获一个按键事件并阻止传播,但如果有一个“正确”的方法,这似乎有点像黑客行为。您是否尝试过设置:
self.typingSearchesSortColumn = False
就你的OLV来说
通过:
isSearchable=False
到所有列定义
默认情况下,这两个选项都设置为true。我在类文档中找不到一个“正确”的方法来执行此操作,并且在主框架中阻止事件停止加速器,并且单元格编辑工作正常。但是,如果稍微改变一下规则,就可以覆盖\u FindByTyping
而不执行任何操作,从而删除所有搜索代码
def _FindByTyping(self, searchColumn, prefix):
pass
我确实尝试了这两种方法(并且一起尝试)。但是,假设typingSearchesSortColumn=True
只意味着键入在当前排序的列中搜索,而不是在“primary”列中搜索isSearchable=True
只是意味着如果对该列进行了排序,则可以搜索该列而不是第0列。