0

私はObjectListViewのこのフィルタを無効にするといくつかの助けが必要です。python ObjectListViewフィルタを否定

def addFilter(self, text): 
    # OLV.Filter.Predicate() 
    meter_flt = OLV.Filter.TextSearch(self, text=text) 
    self.SetFilter(meter_flt) 

これは素晴らしいことですが、「鶏肉」のようにフィルタリングしようとすると、それは唯一のショーの鶏です。私はそれを逆にしたいので、もし私が鶏肉を入力すれば、鶏肉以外はすべて表示されるべきです。

ありがとうございました!

答えて

0

あなたはFilter.Predicate

Filter.Predicate(booleanCallable)を使用することができますが、真の呼び出し可能なリターンを与え ための唯一のモデルオブジェクトを表示します。呼び出し可能オブジェクトは、考慮するモデルオブジェクトである 単一パラメータを受け入れる必要があります。

以下は、アイテムのリストから除外する複数のテキストを処理するためのコードスニペットです。

def __init__(self): 
    self.text_list = [] # list of text to be excluded 
    self.SetFilter(Filter.Predicate(self.filterMethod)) 

def addFilter(self, text): 
    self.text_list.append(text) 
    self.RepopulateList() # so that our filter_method is applied again 

def filterMethod(self,obj): 
    for text in self.text_list: 
     if {YOUR EXCLUSION LOGIC HERE}: 
      return False 
    return True